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

Implement the restreaming mode for eventlog-to-zipkin #11

Open
ethercrow opened this issue Apr 26, 2020 · 1 comment
Open

Implement the restreaming mode for eventlog-to-zipkin #11

ethercrow opened this issue Apr 26, 2020 · 1 comment

Comments

@ethercrow
Copy link
Owner

Current mode of operation:

  1. Run an instrumented application to completion
  2. Upload the resulting eventlog file to a trace collector or convert it into a chrome tracing file

Another mode that we need:

  1. An instrumented application is running for a very long time and is writing the eventlog into a pipe or a socket
  2. eventlog-to-zipkin is reading the eventlog from said pipe or socket and sending the trace data to a collector

Beware the https://gitlab.haskell.org/ghc/ghc/issues/18043

@ethercrow
Copy link
Owner Author

ethercrow commented Jun 13, 2020

cc @maksbotan

With the current master the following seems to work:

mkfifo foo.eventlog.pipe
eventlog-to-zipkin read foo.eventlog.pipe &
foo +RTS -N1 -l -olfoo.eventlog.pipe

Note the -N1 there. When running on multiple cores RTS produces events out of order and the exporters are not ready for that. Expect crashes or missing data with -N other than 1.

I only tested in on a very short-lived run of megaexample.

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

1 participant