ddtrace
is Datadog's Python APM client. It is used to profile code and
trace requests as they flow across web servers, databases and microservices.
This enables developers to have greater visibility into bottlenecks and
troublesome requests in their application.
For a basic product overview: check out the `setup documentation`_.
For details about developing and contributing: refer to the `development guide`_.
For descriptions of the terminology of Datadog APM: take a look at the `official documentation`_.
We officially support Python 2.7, 3.5 and above.
The versions listed are the versions that we have tested, but ddtrace
can
still be compatible with other versions of these libraries. If a version of a
library you use is unsupported, feel free to contribute or request it by
contacting support.
[1] | Libraries that are automatically instrumented when the
:ref:`ddtrace-run<ddtracerun>` command is used or the patch_all() method
is called. Always use patch() and patch_all() as soon as possible in
your Python entrypoint. |
[2] | only the synchronous client |
[3] | only in Python 3.7 and above. |
[4] | Activating the legacy context provider is required in Python < 3.7. See :ref:`asyncio` for more details. |
[5] | grpc.aio is automatically instrumented starting with grpcio>=1.32.0 . |
Datadog may gather environmental and diagnostic information about instrumentation libraries; this includes information about the host running an application, operating system, programming language and runtime, APM integrations used, and application dependencies. Additionally, Datadog may collect information such as diagnostic logs, crash dumps with obfuscated stack traces, and various system performance metrics.
To disable set DD_INSTRUMENTATION_TELEMETRY_ENABLED=false
environment variable.
See our official datadog documentation for more details.
.. toctree:: :hidden: installation_quickstart configuration integrations basic_usage advanced_usage benchmarks contributing troubleshooting versioning upgrading api release_notes