Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Nov 14 17:40

    jkarneges on master

    update dev version (compare)

  • Nov 14 17:39

    jkarneges on v1.36.0

    (compare)

  • Nov 14 17:39

    jkarneges on master

    update version (compare)

  • Nov 10 01:46

    jkarneges on master

    support public keys with Grip-S… (compare)

  • Nov 09 22:39

    jkarneges on master

    jwt: enable copying keys and ad… (compare)

  • Nov 09 00:53

    jkarneges on master

    detect and expose jwt key types (compare)

  • Nov 08 00:55

    jkarneges on newjwt

    (compare)

  • Nov 08 00:54

    jkarneges on master

    replace jwt implementation with… (compare)

  • Nov 08 00:47

    jkarneges on master

    move jwt into corelib (compare)

  • Nov 07 23:50

    jkarneges on master

    link libs in correct order (compare)

  • Nov 07 23:03

    jkarneges on newjwt

    more lib order (compare)

  • Nov 07 22:49

    jkarneges on newjwt

    lib order (compare)

  • Nov 07 22:37

    jkarneges on newjwt

    link libs in correct order replace jwt implementation with… fix whitespace (compare)

  • Nov 07 21:32

    jkarneges on newjwt

    replace jwt implementation with… fix whitespace (compare)

  • Nov 07 21:31

    jkarneges on master

    monitorsubsock.py: port to pyth… (compare)

  • Nov 05 01:43

    jkarneges on master

    reduce required qt version to 5… (compare)

  • Oct 11 01:25

    jkarneges on newjwt

    replace jwt implementation with… fix whitespace (compare)

  • Oct 11 01:24

    jkarneges on master

    use https for submodules (compare)

  • Oct 11 01:11

    jkarneges on newjwt

    fix whitespace (compare)

  • Oct 08 01:11

    jkarneges on newjwt

    replace jwt implementation with… (compare)

Paul DeMarco
@pauldemarco

from the client's perspective, receiving 500 messages/sec seems like a lot, especially if the client is an end user UI. I wonder if a human can perceive this resolution of data or if it could be collapsed into fewer messages?

collapsing into some interval frame size is a great idea, i'll try it now, should definitely help.

Justin Karneges
@jkarneges
yes, message_rate is the rate for the whole app
tmikaeld
@tmikaeld
I'm using Let's encrypt with pushpin on port 4430, I've symlinked the certs to /etc/pushpin/runner/certs/default_4430.key and /etc/pushpin/runner/certs/default_4430.crt from /etc/letsencrypt/live/domain.xyz/fullchain.pem and /etc/letsencrypt/live/domain.xyz/privkey.pem and confirmed they are available, but I get the error ERR_SSL_UNRECOGNIZED_NAME_ALERTor tlsv1 unrecognized name. Tried to find information about this, but none available for Condure. What to do?
I don't see any errors in either pushpin nor Condure logs.
Justin Karneges
@jkarneges
@tmikaeld I saw you filed an issue on condure, we can discuss there
Dave Johnston
@davejohnston
Hi, I’m trying to find out if it’s possible to log specific http headers with pushpin. I can’t find anything in the docs, has anyone done this ?
Jesse Degger
@jdegger
Anybody any luck getting access to Fanout now they have closed the register form?
Justin Karneges
@jkarneges
@davejohnston there is only the log_user_agent setting. you could try logging headers from your backend instead
@jdegger usually you'll get a mail within a few days
Simon Nielsen
@SimonNi59475821_twitter
can anyone tell med how to proxy from pushpin to kong api gateway ?
Justin Karneges
@jkarneges
Hi @SimonNi59475821_twitter , just set a route in pushpin pointing to kong's host and port. are you running into a particular issue?
Simon Nielsen
@SimonNi59475821_twitter

hi @jkarneges thx for the reply :-) i am a little rookie on pushpin. if i want to ratelimit websocket request trough kong api gateway, but kong cant register websocket request.
Can pushpin route the request to kong so it can see the requests? pushpin can convert/ ws to http?

And how will a route look like in pushpin ?

Justin Karneges
@jkarneges
@SimonNi59475821_twitter do you already have a websocket server and you're wanting to ratelimit the requests to it? pushpin can convert websockets to http, in order to send to kong, but this won't help if kong needs to then send websocket connections to a websocket backend server
Kolja Lucht
@kolja-lucht_gitlab
Hi, pushpin-newbie here ;) I'm trying to get a pushpin instance going. What I've got so far is a running EC2 Ubuntu instance on which I installed pushpin. I verified that the service is actually running. But when I try to connect to the client from my machine via the curl command stated in the getting started guide, it times out. I'm assuming it's because ports 80 and 443 aren't open on my instance (I checked with lsof -i and they don't show up there). Is there any documentation on what the requirements of the server are that is running pushpin? I'm also quite new to the networking topic in general and so I'm just assuming that I need to install apache or some other kind of web server on the pushpin instance if I want to get the http/s traffic working. Please correct me if I'm wrong. I'll appreciate any input on this :)
Justin Karneges
@jkarneges
hi @kolja-lucht_gitlab , pushpin listens on port 7999 by default. the port is configurable in /etc/pushpin/pushpin.conf, for example by setting http_port=80. note that if you set a privileged port, you'll also need to allow the port via authbind
for authbind, I think you'd need to install the authbind ubuntu package, and then create an empty file /etc/authbind/byport/80 that the pushpin user has access to
you could also leave pushpin running on port 7999 and put a proxy in front of it. at our company, we use haproxy for load balancing in front of pushpin for example. but there is nothing wrong with running pushpin on standard ports and having clients connect directly to it
Rob
@robrichter

Hi, is it possible to route to unix domain socket? I can't find it in docs. I tried it but with no lock.

In /etc/pushpin/routes something like:

  • //unix:/run/mysocket.sock
    ?
Justin Karneges
@jkarneges
@robrichter this is not possible, but it seems reasonable to want
Marcio Zimbres
@zimbres
Hello, I created a working version of Arm64 Container. For those interested: https://hub.docker.com/r/zimbres/pushpin
RadiumBlock
@radiumblock:matrix.org
[m]
@jkarneges: is there a release being planned that rolls in changes since the last release? I am also seeing some strange connection issues with websocket proxy in Ubuntu 22. Any one else face similar issues?
RadiumBlock
@radiumblock:matrix.org
[m]
zurl log shows frame-to-large error message which causes the connection to be reset. Is there a setting to side step this in zurl? Or is this just a symptom.
Justin Karneges
@jkarneges
hi @radiumblock:matrix.org you could try increasing buffer_size in zurl.conf.template
RadiumBlock
@radiumblock:matrix.org
[m]
That did not help, strangely things work fine in Ubuntu 20.04 but not on Ubuntu 22. I am trying to compile and use 1.35.0 release source
Justin Karneges
@jkarneges
do you know if the backend is sending large websocket frames? or does this error seem like it should not be happening based on the kinds of traffic you're working with?
RadiumBlock
@radiumblock:matrix.org
[m]
The backend does send large frames but I don't think they are 2MB large. I had set the buffer size to 2000000.
I wonder if there is a clue in why it works on Ubuntu 20 but not 22? Did some default change?
Justin Karneges
@jkarneges
are you using condure in both cases?
RadiumBlock
@radiumblock:matrix.org
[m]
Yes. I am
Both cases I built it from 1.35.0 source tar.gz
Justin Karneges
@jkarneges
and zurl came from apt? what versions there?
RadiumBlock
@radiumblock:matrix.org
[m]
yes it came from APT
zurl/focal,now 1.11.0-1 amd64 [installed] on ubuntu 20.04.4
zurl/jammy,now 1.11.1-1 amd64 [installed] on ubuntu 22.04.1
Justin Karneges
@jkarneges
and how about condure versions?
RadiumBlock
@radiumblock:matrix.org
[m]
condure/now 1.7.0~jammy1 amd64 [installed,local] Ubuntu 22
condure/fanout-focal 1.7.0~focal1 amd64 [upgradable from: 1.6.0~focal1] Ubuntu 20
Justin Karneges
@jkarneges
zurl 1.11.1 is not meaningfully different than 1.11.0 so everything is basically the same on both operating systems
all I can think of is the flow control varies for some reason (maybe performance differences) and this ends up changing the frame sizes
try setting an even larger buffer_size in zurl? also check to make sure the setting is really getting used, i.e. the value got written to zurl.conf and ps shows zurl using that conf file
Justin Karneges
@jkarneges
and also make sure the zurl using that config is the one being used by pushpin. it's possible pushpin is using a system managed zurl
RadiumBlock
@radiumblock:matrix.org
[m]
Ok will try it out. Is it possible to have the websocket pass through proxy route traffic to two backends simultaneously and use one of the results?
Justin Karneges
@jkarneges
what do you mean by simultaneously? you can specify more than one target, to use as fallbacks
RadiumBlock
@radiumblock:matrix.org
[m]
The config format for fallback is not obvious to me from the docs. What I meant is for performance reasons the request can be sent to backend1 and backend2. Whichever arrives first can be used.
Justin Karneges
@jkarneges
each route line is a condition and then one or more targets, separated by spaces. for example:
* backend1:80 backend2:80
but they aren't used simultaneously as you describe
RadiumBlock
@radiumblock:matrix.org
[m]
Fallback is decided based on a timeout setting?
Justin Karneges
@jkarneges
OS defaults
admittedly this is pretty limiting. probably better to just use a load balancer
RadiumBlock
@radiumblock:matrix.org
[m]
Is pushpin smart enough to avoid sending the same request upstream when a preexisting upstream connection is requesting the same websocket method?