Configuration at Runtime

This feature is in public beta.

Overview

Configuration at runtime lets you modify APM library configuration from the Datadog UI, without needing to restart your application or service. You don’t need to wait for a new deployment or code change to update your configuration. Instead, update it right away with configuration at runtime.

Prerequisites

  • Datadog Agent 7.41.1 or higher.
  • Remote Configuration is enabled for your Agent.
  • APM Remote Configuration Read and APM Remote Configuration Write permissions. Note: If you don’t have these permissions, ask your Datadog Admin to update your permissions from your Organization Settings.

Using configuration at runtime

To make changes to a service’s configuration at runtime:

  1. Go to the Service Catalog in APM.
  2. Hover over the service for which you want to update configuration.
  3. Click Full Page next to the service name.
  4. Click Service Info.
  5. From the Setup Guidance tab, click Edit.
  6. Change the configuration options as needed. See supported configuration options for more details.
  7. Click Apply Configuration.

In Active Library Configuration, you can see which options are configured for this service and the selected environment:

From the Setup Guidance tab, you can see your active library configuration.

In this example, you can see that Log Injection is enabled for the Staging environment across two instances. An instance refers to an instance of the Remote Configuration client. There should be one instance per process of your application.

You can tell when the configuration changes have been successfully applied by referencing the X Applied text. In this example, the configuration applied successfully to all two instances.

Supported configuration options

The following options are supported with configuration at runtime. The required tracer version is listed for each language:

OptionJavaJavascriptPython.NETRubyGoC++
Custom sampling rate
Set a global sampling rate for the library using DD_TRACE_SAMPLE_RATE.
1.17.0+4.11+ 3.32+ 2.45+2.4.0+2.33.0+1.13.0+1.59.0+0.2.0+
Log injection
Automatically inject trace correlation identifiers to correlate logs and traces by enabling DD_LOGS_INJECTION.
1.17.0+4.11+ 3.32+ 2.45+2.6.0+2.33.0+1.13.0+
HTTP header tags
Add HTTP header values as tags on traces using DD_TRACE_HEADER_TAGS.
1.17.0+4.11+ 3.32+ 2.45+2.6.0+2.33.0+1.13.0+1.59.0+
Custom span tags
Add specified tags to each span using DD_TAGS.
1.31.0+4.23.0+ 3.44.0+2.5.0+2.44.0+1.59.0+0.2.0+

Further reading

Additional helpful documentation, links, and articles: