Skip to main content

Jaeger Python OpenTracing Tracer implementation for AsyncIO

Project description

Unit tests Coverage Latest Version https://img.shields.io/pypi/wheel/async-jaeger.svg https://img.shields.io/pypi/pyversions/async-jaeger.svg https://img.shields.io/pypi/l/async-jaeger.svg

Client-side library that can be used for distributed trace collection from Python apps via TCP (HTTP) to Jaeger.

See the OpenTracing Python API for additional detail.

Installation

pip3 install async-jaeger

Debug Traces (Forced Sampling)

Programmatically

The OpenTracing API defines a sampling.priority standard tag that can be used to affect the sampling of a span and its children:

from opentracing.ext import tags as ext_tags

span.set_tag(ext_tags.SAMPLING_PRIORITY, 1)

Via HTTP Headers

Jaeger Tracer also understands a special HTTP Header jaeger-debug-id, which can be set in the incoming request, e.g.

curl -H "jaeger-debug-id: some-correlation-id" http://myhost.com

When Jaeger sees this header in the request that otherwise has no tracing context, it ensures that the new trace started for this request will be sampled in the “debug” mode (meaning it should survive all downsampling that might happen in the collection pipeline), and the root span will have a tag as if this statement was executed:

span.set_tag('jaeger-debug-id', 'some-correlation-id')

This allows using Jaeger UI to find the trace by this tag.

License

Apache 2.0 License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

async-jaeger-0.0.13.tar.gz (43.8 kB view hashes)

Uploaded Source

Built Distribution

async_jaeger-0.0.13-py3-none-any.whl (30.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page