The OpenZipkin OpenTracing (Open)Library for (Open)Python :D
apt-get install python-dev
python setup.py install
#pip install zipkin-python-opentracing
Please see the example programs for examples of how to use this library. In particular:
- Trivial Example shows how to use the library on a single host.
- Non-trivial example is way more resource intensive multi-threaded example (takes ~5'):.
- Context in Headers shows how to pass a
TraceContext
throughHTTP
headers.
- Interoperability extends on the
HTTP
headers example by starting a node express server that receives a request, proxies it back to Python and then forwards the response.
Or if your python code is already instrumented for OpenTracing, you can simply switch to OpenZipkin's implementation with:
import opentracing
import zipkin_ot
if __name__ == "__main__":
opentracing.tracer = zipkin_ot.Tracer(
service_name='your_microservice_name')
with opentracing.tracer.start_span('TestSpan') as span:
span.log_event('test message', payload={'life': 42})
opentracing.tracer.flush()
Based (heavily) on and lots of credits to lightstep and py_zipkin.
This library is the OpenZipkin binding for OpenTracing. See the OpenTracing Python API for additional detail.
Copyright (c) 2016 The OpenTracing Authors.