Chapter 12. Distributed tracing

12.1. Enabling distributed tracing

The client offers distributed tracing based on the Jaeger implementation of the OpenTracing standard. Use the following steps to enable tracing in your application:

  1. Install the tracing dependencies.

    Red Hat Enterprise Linux 7

    $ sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
    $ sudo yum install python2-pip
    $ pip install --user --upgrade setuptools
    $ pip install --user opentracing jaeger-client

    Red Hat Enterprise Linux 8

    $ sudo dnf install python3-pip
    $ pip3 install --user opentracing jaeger-client

  2. Register the global tracer in your program.

    Example: Global tracer configuration

    from proton.tracing import init_tracer
    
    tracer = init_tracer("<service-name>")

For more information about Jaeger configuration, see Jaeger Sampling.

When testing or debugging, you may want to force Jaeger to trace a particular operation. See the Jaeger Python client documentation for more information.

To view the traces your application captures, use the Jaeger Getting Started to run the Jaeger infrastructure and console.