Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Schema of the architecture of pushpin ? #47700

Open
inkhey opened this issue Jul 7, 2021 · 1 comment
Open

Schema of the architecture of pushpin ? #47700

inkhey opened this issue Jul 7, 2021 · 1 comment

Comments

@inkhey
Copy link

inkhey commented Jul 7, 2021

Hello, i use pushpin for the https://github.com/tracim/tracim project.

As we get multiple log un pushpin related to the multiples components of it. It's a bit complicated to clearly understand what it mean. A schema giving explaination of the process (the goal of conduire, zurl, mongrel2, pusphin-handler, etc...), will be useful.

Is there already something like this ?

Thanks for pushpin, it's an awesome software !

@jkarneges
Copy link
Member

Hmm, there isn't any documentation for this. I suppose it would be good to add.

In the meantime, here's an overview:

  • condure: handles incoming connections
  • zurl: handles outgoing connections
  • pushpin-proxy: handles proxying logic
  • pushpin-handler: handles pubsub/grip logic

Earlier versions used mongrel2+m2adapter for handling incoming connections, but this is deprecated in recent versions.

When looking at logs for debugging, the proxy logs are usually the best place to start, to see how a connection was accepted/routed. The handler logs are useful for knowing what channels are being subscribed and published to. The condure/zurl logs are useful for investigating connection issues.

By the way, it can be convenient to run pushpin with the --merge-output option. This causes all the logs to be written to stdout instead of files, with each log line prefixed with the name of the sending process. That way there is only one log to look at.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants