Dynamic Instrumentation is a feature of supporting Datadog tracing libraries. If you are already using APM to collect traces for your application, ensure your Agent and tracing library are on the required version, and go directly to enabling Dynamic Instrumentation in step 4.

Installation

  1. Install or upgrade your Agent to version 7.45.0 or higher.

  2. If you don’t already have APM enabled, in your Agent configuration, set the DD_APM_ENABLED environment variable to true and listening to the port 8126/TCP.

  3. Install or upgrade the PHP tracing libraries to version 1.4.0, by following the relevant instructions.

    Note: Dynamic Instrumentation is available in the dd-trace-php library in versions 1.4.0 and later. Only function and method probes are supported.

  4. Run your service with Dynamic Instrumentation enabled by setting the DD_DYNAMIC_INSTRUMENTATION_ENABLED environment variable to true. Specify DD_SERVICE, DD_ENV, and DD_VERSION Unified Service Tags so you can filter and group your probes and target active clients across these dimensions.

  5. After starting your service with Dynamic Instrumentation enabled, you can start using Dynamic Instrumentation on the APM > Dynamic Instrumentation page.

Configuration

Configure Dynamic Instrumentation using the following environment variables:

Environment variableTypeDescription
DD_DYNAMIC_INSTRUMENTATION_ENABLEDBooleanSet to true to enable Dynamic Instrumentation.
DD_SERVICEStringThe service name, for example, web-backend.
DD_ENVStringThe environment name, for example: production.
DD_VERSIONStringThe version of your service.
DD_TAGSStringTags to apply to produced data. Must be a list of <key>:<value> separated by commas such as: layer:api,team:intake.

What to do next

See Dynamic Instrumentation for information about setting snapshot and metric probes and browsing and indexing the data.

Further Reading

Additional helpful documentation, links, and articles: