Right now, there's support for python apps that use pyramid or swagger via pyramid_zipkin.
We are regularly asked about a generic python tracer, but we are missing a champion to do this.
Note that these aren't mutually exclusive, but a solid python zipkin-capable tracer is certainly the outcome. If you can champion this, please reply back and let us know which direction, for example, if you want a repo created.
Here are some contacts of interest:
Users who've expressed interest: @jmontemayor @sundararn_twitter @joeb-git
Those who've contributed to existing OSS existing python tracers: @abesto @prat0318 @yurishkuro @zsol
Those who've written in-house python tracers: @yzhang226 @virtuald @liyichao @pavanch007 @mansu
i will be highly interested to follow on this. Do we have a doc or similar tracer in another language (i think we have one in ruby?) to get the APIs sketched out?
@prat0318 for api design, there's two paths that are repeated
Trace.record("event"). These apis only offer zipkin features, so are more straightforward to support in zipkin.I am, of course, biased, but just want to mention that using the OpenTracing API opens up a lot of possibilities to reuse already existing instrumentations like these:
I do not have free cycles to work on supporting B3 headers in jaeger-client-python, but am happy to provide guidance and prompt code reviews if someone wants to add the B3-based injectors/extractors and a Sender to ship already Thrift-formatted spans to one of Zipkin supported transports.
@yurishkuro which of the things you mentioned are jaeger-specific? Ex if someone wanted to make an zipkin-capable python opentracer outside uber's org, would they still be able to use uber-common/opentracing-python-instrumentation?
Yes, all 3 instrumentation libs above can be used with any OpenTracing tracer.
I will dig more on the weekend if jaeger-client can be integrated with B3 headers (at the cost of depping on opentracing, tornado & others) or will it make sense to create a simple new one.
:thumbsup:
On 1 Sep 2016 15:15, "Prateek Agarwal" [email protected] wrote:
I will dig more on the weekend if jaeger-client can be integrated with B3
headers (at the cost of depping on opentracing, tornado & others) or will
it make sense to create a simple new one.—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/openzipkin/zipkin/issues/1265#issuecomment-243995815,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAD6107nRfKSLECsfuMEz7cHe_crWjrtks5qlnt3gaJpZM4JyMS2
.
@adriancole we're in the process of doing this right now, and are probably a few days away from open-sourcing it. We essentially just pulled all the non-pyramid stuff out of pyramid-zipkin.
@mjbryant Adrian recently sent a PR to our jaeger-client-java that added a sender and codecs to support B3 headers and report to Zipkin directly. A similar change can be made to jaeger-client-python
for those interested, I just made an example project https://github.com/openzipkin/pyramid_zipkin-example/pull/1
fyi all, there's been some progress on opentracing+python+zipkin here https://github.com/openzipkin/zipkin-python-opentracing/pull/1
Hello folks, there's been some further progress on the openzipkin/zipkin-python-opentracing#1 . It's able to talk to ot-zipkin-js and zipkin and do some basic tracing. It's multi-threaded-happy and it has some tests. Some problems it has is that it logs events wrongly as binary annotations instead of real events and general alpha-ness. Will come back with more, but if any of you wants to have a play - please feel free... comments and screenshots of bugs greatly appreciated.
Most helpful comment
I am, of course, biased, but just want to mention that using the OpenTracing API opens up a lot of possibilities to reuse already existing instrumentations like these:
I do not have free cycles to work on supporting B3 headers in jaeger-client-python, but am happy to provide guidance and prompt code reviews if someone wants to add the B3-based injectors/extractors and a Sender to ship already Thrift-formatted spans to one of Zipkin supported transports.