Configuration#
ddtrace can be configured using environment variables. Many Integrations can also be configured using environment variables, see specific integration documentation for more details.
The following environment variables for the tracer are supported:
Common Configurations#
For common configuration variables (not language specific), see Configure the Datadog Tracing Library.
Unified Service Tagging#
- DD_ENV#
Set an application’s environment e.g.
prod,pre-prod,staging. Added inv0.36.0. See Unified Service Tagging for more information.Type: String
Default: (no value)
- DD_SERVICE#
Set the service name to be used for this application. A default is provided for these integrations: Bottle, Flask, Grpc, Pyramid, Tornado, Celery, Django and Falcon. Added in
v0.36.0. See Unified Service Tagging for more information.Type: String
Default: (autodetected)
- DD_VERSION#
Set an application’s version in traces and logs e.g.
1.2.3,6c44da20,2020.02.13. Generally set along withDD_SERVICE.See Unified Service Tagging for more information.
Type: String
Default: (no value)
New in version v0.36.0.
Traces#
- DD_<INTEGRATION>_DISTRIBUTED_TRACING
Enables distributed tracing for the specified <INTEGRATION>.
Type: String
Default: True
New in version v2.7.0.
- DD_<INTEGRATION>_SERVICE
Set the service name, allowing default service name overrides for traces for the specific <INTEGRATION>.
Type: String
Default: <INTEGRATION>
New in version v2.11.0.
- DD_ASGI_TRACE_WEBSOCKET#
Enables tracing ASGI websockets. Please note that the websocket span duration will last until the connection is closed, which can result in long running spans.
Type: String
Default: (no value)
New in version v2.7.0.
- DD_BOTOCORE_EMPTY_POLL_ENABLED#
Enables creation of consumer span when AWS SQS and AWS Kinesis
poll()operations return no records. When disabled, no consumer span is created if no records are returned.Type: Boolean
Default: True
New in version v2.6.0.
- DD_BOTOCORE_PROPAGATION_ENABLED#
Enables trace context propagation connecting producer and consumer spans within a single trace for AWS SQS, SNS, and Kinesis messaging services.
Type: Boolean
Default: (no value)
New in version v2.6.0.
- DD_HTTP_SERVER_TAG_QUERY_STRING#
Send query strings in http.url tag in http server integrations.
Type: Boolean
Default: True
- DD_SERVICE_MAPPING#
Define service name mappings to allow renaming services in traces, e.g.
postgres:postgresql,defaultdb:postgresql.Type: String
Default: (no value)
- DD_TRACE_<INTEGRATION>_ENABLED
Enables <INTEGRATION> to be patched. For example,
DD_TRACE_DJANGO_ENABLED=falsewill disable the Django integration from being installed.Type: Boolean
Default: True
New in version v0.41.0.
- DD_TRACE_128_BIT_TRACEID_GENERATION_ENABLED#
This configuration enables the generation of 128 bit trace ids.
Type: Boolean
Default: (no value)
New in version v1.12.0.
- DD_TRACE_API_VERSION#
The trace API version to use when sending traces to the Datadog agent.
Currently, the supported versions are:
v0.4andv0.5.Type: String
Default:
v0.5New in version v0.56.0.
Changed in version v1.7.0: default changed to
v0.5.Changed in version v1.19.1: default reverted to
v0.4.Changed in version v2.4.0: default changed to
v0.5.
- DD_TRACE_CLOUD_PAYLOAD_TAGGING_MAX_DEPTH#
Sets the depth of expanding the JSON AWS payload after which we stop creating tags.
Type: Integer
Default: 10
New in version v2.17.0.
- DD_TRACE_CLOUD_PAYLOAD_TAGGING_MAX_TAGS#
Sets the the maximum number of tags that will be added when expanding an AWS payload.
Type: Integer
Default: 758
New in version v2.17.0.
- DD_TRACE_CLOUD_PAYLOAD_TAGGING_SERVICES#
Sets the enabled AWS services to be expanded when AWS payload tagging is enabled.
Type: Set
Default: {‘s3’: None, ‘sns’: None, ‘sqs’: None, ‘kinesis’: None, ‘eventbridge’: None}
New in version v2.17.0.
- DD_TRACE_CLOUD_REQUEST_PAYLOAD_TAGGING#
Enables AWS request payload tagging when set to
"all"or a valid comma-separated list ofJSONPaths.Type: String
Default: None
New in version v2.17.0.
- DD_TRACE_CLOUD_RESPONSE_PAYLOAD_TAGGING#
Enables AWS response payload tagging when set to
"all"or a valid comma-separated list ofJSONPaths.Type: String
Default: None
New in version v2.17.0.
- DD_TRACE_HEADER_TAGS#
A map of case-insensitive http headers to tag names. Automatically applies matching header values as tags on request and response spans. For example if
DD_TRACE_HEADER_TAGS=User-Agent:http.useragent,content-type:http.content_type. The value of the header will be stored in tags with the namehttp.useragentandhttp.content_type.If a tag name is not supplied the header name will be used. For example if
DD_TRACE_HEADER_TAGS=User-Agent,content-type. The value of http header will be stored in tags with the nameshttp.<response/request>.headers.user-agentandhttp.<response/request>.headers.content-type.Type: String
Default: (no value)
- DD_TRACE_HTTP_CLIENT_TAG_QUERY_STRING#
Send query strings in http.url tag in http client integrations.
Type: Boolean
Default: True
- DD_TRACE_HTTP_SERVER_ERROR_STATUSES#
Comma-separated list of HTTP status codes that should be considered errors when returned by an HTTP request. Multiple comma separated error ranges can be set (ex:
200,400-404,500-599). The status codes are used to set theerrorfield on the span.Type: String
Default: 500-599
- DD_TRACE_METHODS#
Specify methods to trace. For example:
mod.submod:method1,method2;mod.submod:Class.method1. Note that this setting is only compatible withddtrace-run, and that it doesn’t work for methods implemented by libraries for which there’s an integration inddtrace/contrib.Type: String
Default: (no value)
New in version v2.1.0.
- DD_TRACE_OBFUSCATION_QUERY_STRING_REGEXP#
A regexp to redact sensitive query strings. Obfuscation disabled if set to empty string
Type: String
Default:
'(?ix)(?:(?:"|%22)?)(?:(?:old[-_]?|new[-_]?)?p(?:ass)?w(?:or)?d(?:1|2)?|pass(?:[-_]?phrase)?|secret|(?:api[-_]?|private[-_]?|public[-_]?|access[-_]?|secret[-_]?)key(?:[-_]?id)?|token|consumer[-_]?(?:id|key|secret)|sign(?:ed|ature)?|auth(?:entication|orization)?)(?:(?:\\s|%20)*(?:=|%3D)[^&]+|(?:"|%22)(?:\\s|%20)*(?::|%3A)(?:\\s|%20)*(?:"|%22)(?:%2[^2]|%[^2]|[^"%])+(?:"|%22))|(?: bearer(?:\\s|%20)+[a-z0-9._\\-]+|token(?::|%3A)[a-z0-9]{13}|gh[opsu]_[0-9a-zA-Z]{36}|ey[I-L](?:[\\w=-]|%3D)+\\.ey[I-L](?:[\\w=-]|%3D)+(?:\\.(?:[\\w.+/=-]|%3D|%2F|%2B)+)?|-{5}BEGIN(?:[a-z\\s]|%20)+PRIVATE(?:\\s|%20)KEY-{5}[^\\-]+-{5}END(?:[a-z\\s]|%20)+PRIVATE(?:\\s|%20)KEY(?:-{5})?(?:\\n|%0A)?|(?:ssh-(?:rsa|dss)|ecdsa-[a-z0-9]+-[a-z0-9]+)(?:\\s|%20|%09)+(?:[a-z0-9/.+]|%2F|%5C|%2B){100,}(?:=|%3D)*(?:(?:\\s|%20|%09)+[a-z0-9._-]+)?)'Changed in version v1.19.0:
DD_TRACE_OBFUSCATION_QUERY_STRING_REGEXPreplacesDD_TRACE_OBFUSCATION_QUERY_STRING_PATTERNwhich is deprecated and will be deleted in 2.0.0
- DD_TRACE_OTEL_ENABLED#
When used with
ddtrace-runthis configuration enables OpenTelemetry support. To enable OpenTelemetry without ddtrace-run refer to the followingdocs.Type: Boolean
Default: (no value)
New in version v1.12.0.
- DD_TRACE_PARTIAL_FLUSH_ENABLED#
Prevents large payloads being sent to APM.
Type: Boolean
Default: True
- DD_TRACE_PARTIAL_FLUSH_MIN_SPANS#
Maximum number of spans sent per trace per payload when
DD_TRACE_PARTIAL_FLUSH_ENABLED=True.Type: Integer
Default: 300
- DD_TRACE_PROPAGATION_EXTRACT_FIRST#
Whether the propagator stops after extracting the first header.
Type: Boolean
Default: (no value)
New in version v2.3.0.
- DD_TRACE_PROPAGATION_HTTP_BAGGAGE_ENABLED#
Enables propagation of baggage items through http headers with prefix
ot-baggage-.Type: Boolean
Default: (no value)
New in version v2.4.0.
- DD_TRACE_PROPAGATION_STYLE#
Comma separated list of propagation styles used for extracting trace context from inbound request headers and injecting trace context into outbound request headers.
Overridden by
DD_TRACE_PROPAGATION_STYLE_EXTRACTfor extraction.Overridden by
DD_TRACE_PROPAGATION_STYLE_INJECTfor injection.The supported values are
datadog,b3multi, andb3 single header,tracecontext, andnone.When checking inbound request headers we will take the first valid trace context in the order provided. When
noneis the only propagator listed, propagation is disabled.All provided styles are injected into the headers of outbound requests.
Example:
DD_TRACE_PROPAGATION_STYLE="datadog,b3"to check for bothx-datadog-*andx-b3-*headers when parsing incoming request headers for a trace context. In addition, to inject bothx-datadog-*andx-b3-*headers into outbound requests.Type: String
Default:
datadog,tracecontextChanged in version v1.7.0: Added support for
tracecontextW3C headers. Changed the default value toDD_TRACE_PROPAGATION_STYLE="tracecontext,datadog".Changed in version v2.6.0: Updated default value to
datadog,tracecontext.
- DD_TRACE_SPAN_TRACEBACK_MAX_SIZE#
The maximum length of a traceback included in a span.
Type: Integer
Default: 30
New in version v2.3.0.
- DD_TRACE_WRITER_BUFFER_SIZE_BYTES#
The max size in bytes of traces to buffer between flushes to the agent.
Type: Int
Default: 8388608
- DD_TRACE_WRITER_INTERVAL_SECONDS#
The time between each flush of traces to the trace agent.
Type: Float
Default: 1.0
- DD_TRACE_WRITER_MAX_PAYLOAD_SIZE_BYTES#
The max size in bytes of each payload item sent to the trace agent. If the max payload size is greater than buffer size, then max size of each payload item will be the buffer size.
Type: Int
Default: 8388608
- DD_TRACE_X_DATADOG_TAGS_MAX_LENGTH#
The maximum length of
x-datadog-tagsheader allowed in the Datadog propagation style. Must be a value between 0 to 512. If 0, propagation ofx-datadog-tagsis disabled.Type: Integer
Default: 512
- DD_UNLOAD_MODULES_FROM_SITECUSTOMIZE#
Controls whether module cloning logic is executed by
ddtrace-run. Module cloning involves saving copies of dependency modules for internal use byddtracethat will be unaffected by future imports of and changes to those modules by application code. Valid values for this variable are1,0, andauto.1tellsddtraceto run its module cloning logic unconditionally,0tells it not to run that logic, andautotells it to run module cloning logic only ifgeventis accessible from the application’s runtime.Type: String
Default: auto
New in version v1.9.0.
Trace Context propagation#
- DD_TRACE_PROPAGATION_STYLE_EXTRACT#
Comma separated list of propagation styles used for extracting trace context from inbound request headers.
Overrides
DD_TRACE_PROPAGATION_STYLEfor extraction propagation style.The supported values are
datadog,b3multi, andb3 single header,tracecontext, andnone.When checking inbound request headers we will take the first valid trace context in the order provided. When
noneis the only propagator listed, extraction is disabled.Example:
DD_TRACE_PROPAGATION_STYLE_EXTRACT="datadog,b3multi"to check for bothx-datadog-*andx-b3-*headers when parsing incoming request headers for a trace context.Type: String
Default:
datadog,tracecontextChanged in version v1.7.0: The
b3multipropagation style was added andb3was deprecated in favor it.
- DD_TRACE_PROPAGATION_BEHAVIOR_EXTRACT#
String for how to handle incoming request headers that are extracted for propagation of trace info.
The supported values are
continue,restart, andignore.After extracting the headers for propagation, this configuration determines what is done with them.
The default value is
continuewhich always propagates valid headers.ignoreignores all incoming headers andrestartturns the first extracted valid propagation header into a span link and propagates baggage if present.Example:
DD_TRACE_PROPAGATION_STYLE_EXTRACT="ignore"to ignore all incoming headers and to start a root span without a parent.Type: String
Default:
continueNew in version v2.20.0.
- DD_TRACE_PROPAGATION_STYLE_INJECT#
Comma separated list of propagation styles used for injecting trace context into outbound request headers.
Overrides
DD_TRACE_PROPAGATION_STYLEfor injection propagation style.The supported values are
datadog,b3multi, andb3 single header,tracecontext, andnone.All provided styles are injected into the headers of outbound requests. When
noneis the only propagator listed, injection is disabled.Example:
DD_TRACE_PROPAGATION_STYLE_INJECT="datadog,b3multi"to inject bothx-datadog-*andx-b3-*headers into outbound requests.Type: String
Default:
tracecontext,datadogChanged in version v1.7.0: The
b3multipropagation style was added andb3was deprecated in favor it.
AppSec#
- DD_APPSEC_AUTOMATED_USER_EVENTS_TRACKING#
Sets the mode for the automated user login events tracking feature which sets some traces on each user login event. The supported modes are
safewhich will only store the user id or primary key,extendedwhich will also store the username, email and full name anddisabled. Note that this feature requiresDD_APPSEC_ENABLEDto be set totrueto work.Type: String
Default: safe
Changed in version v1.17.0: Added support to the Django integration. No other integrations support this configuration.
- DD_APPSEC_ENABLED#
Whether to enable AppSec monitoring.
Type: Boolean
Default: (no value)
- DD_APPSEC_OBFUSCATION_PARAMETER_KEY_REGEXP#
Sensitive parameter key regexp for obfuscation.
Type: String
Default:
(?i)(?:p(?:ass)?w(?:or)?d|pass(?:_?phrase)?|secret|(?:api_?|private_?|public_?)key)|token|consumer_?(?:id|key|secret)|sign(?:ed|ature)|bearer|authorization
- DD_APPSEC_OBFUSCATION_PARAMETER_VALUE_REGEXP#
Sensitive parameter value regexp for obfuscation.
Type: String
Default:
(?i)(?:p(?:ass)?w(?:or)?d|pass(?:_?phrase)?|secret|(?:api_?|private_?|public_?|access_?|secret_?)key(?:_?id)?|token|consumer_?(?:id|key|secret)|sign(?:ed|ature)?|auth(?:entication|orization)?)(?:\s*=[^;]|"\s*:\s*"[^"]+")|bearer\s+[a-z0-9\._\-]+|token:[a-z0-9]{13}|gh[opsu]_[0-9a-zA-Z]{36}|ey[I-L][\w=-]+\.ey[I-L][\w=-]+(?:\.[\w.+\/=-]+)?|[\-]{5}BEGIN[a-z\s]+PRIVATE\sKEY[\-]{5}[^\-]+[\-]{5}END[a-z\s]+PRIVATE\sKEY|ssh-rsa\s*[a-z0-9\/\.+]{100,}
- DD_APPSEC_RULES#
Path to a json file containing AppSec rules.
Type: String
Default: (no value)
- DD_APPSEC_SCA_ENABLED#
Whether to enable/disable SCA (Software Composition Analysis).
Type: Boolean
Default: None
- DD_APPSEC_MAX_STACK_TRACES#
Maximum number of stack traces reported for each trace.
Type: Integer
Default: 2
- DD_APPSEC_MAX_STACK_TRACE_DEPTH#
Maximum number of frames in a stack trace report. 0 means no limit.
Type: Integer
Default: 32
- DD_APPSEC_MAX_STACK_TRACE_DEPTH_TOP_PERCENT#
Percentage of reported stack trace frames to be taken from the top of the stack in case of a stack trace truncation. For example, if DD_APPSEC_MAX_STACK_TRACE_DEPTH is set to 25 and DD_APPSEC_MAX_STACK_TRACE_DEPTH_TOP_PERCENT is set to 60, if a stack trace has more than 25 frames, the top 15 (25*0.6=15)frames and the bottom 10 frames will be reported.
Type: Integer
Default: 75
- DD_APPSEC_STACK_TRACE_ENABLED#
Whether to enable stack traces in reports for ASM. Currently used for exploit prevention reports.
Type: Boolean
Default: True
- DD_IAST_ENABLED#
Whether to enable IAST.
Type: Boolean
Default: (no value)
- DD_IAST_MAX_CONCURRENT_REQUESTS#
Number of requests analyzed at the same time.
Type: Integer
Default: 2
- DD_IAST_DEDUPLICATION_ENABLED#
Avoid sending vulnerabilities in the span if they have already been reported in the last hour.
Type: Integer
Default: True
- DD_IAST_REDACTION_ENABLED#
Replace potentially sensitive information in the vulnerability report, like passwords with
*for non tainted strings andabcde...for tainted ones. This will use the regular expressions of the two next settings to decide what to scrub.Type: Boolean
Default: True
New in version v1.17.0.
- DD_IAST_REDACTION_NAME_PATTERN#
Regular expression containing key or name style strings matched against vulnerability origin and evidence texts. If it matches, the scrubbing of the report will be enabled.
Type: String
Default:
(?i)^.*(?:p(?:ass)?w(?:or)?d|pass(?:_?phrase)?|secret|(?:api_?|private_?|public_?|access_?|secret_?)key(?:_?id)?|token|consumer_?(?:id|key|secret)|sign(?:ed|ature)?|auth(?:entication|orization)?)New in version v1.17.0.
- DD_IAST_REDACTION_VALUE_PATTERN#
Regular expression containing value style strings matched against vulnerability origin and evidence texts. If it matches, the scrubbing of the report will be enabled.
Type: String
Default:
(?i)bearer\s+[a-z0-9\._\-]+|token:[a-z0-9]{13}|gh[opsu]_[0-9a-zA-Z]{36}|ey[I-L][\w=-]+\.ey[I-L][\w=-]+(\.[\w.+\/=-]+)?|[\-]{5}BEGIN[a-z\s]+PRIVATE\sKEY[\-]{5}[^\-]+[\-]{5}END[a-z\s]+PRIVATE\sKEY|ssh-rsa\s*[a-z0-9\/\.+]{100,}New in version v1.17.0.
- DD_IAST_STACK_TRACE_ENABLED#
Whether to enable stack traces in reports for Code Security/IAST.
Type: Boolean
Default: True
- DD_IAST_VULNERABILITIES_PER_REQUEST#
Number of vulnerabilities reported in each request.
Type: Integer
Default: 2
- DD_IAST_WEAK_HASH_ALGORITHMS#
Weak hashing algorithms that should be reported, comma separated.
Type: String
Default: MD5,SHA1
- DD_IAST_WEAK_CIPHER_ALGORITHMS#
Weak cipher algorithms that should be reported, comma separated.
Type: String
Default: DES,Blowfish,RC2,RC4,IDEA
Test Visibility#
- DD_CIVISIBILITY_AGENTLESS_ENABLED#
Configures the
CIVisibilityservice to use a test-reportingCIVisibilityWriter. This writer sends payloads for traces on which it’s used to the intake endpoint for Datadog CI Visibility. If there is a reachable Datadog agent that supports proxying these requests, the writer will send its payloads to that agent instead.Type: Boolean
Default: (no value)
New in version v1.12.0.
- DD_CIVISIBILITY_AGENTLESS_URL#
Configures the
CIVisibilityservice to send event payloads to the specified host. If unspecified, the host “https://citestcycle-intake.<DD_SITE>” is used, where<DD_SITE>is replaced by that environment variable’s value, or “datadoghq.com” if unspecified.Type: String
Default: (no value)
New in version v1.13.0.
- DD_CIVISIBILITY_ITR_ENABLED#
Configures the
CIVisibilityservice to query the Datadog API to decide whether to enable the Datadog Test Impact Analysis (formerly Intelligent Test Runner). Setting the variable tofalsewill skip querying the API and disable code coverage collection and test skipping.Type: Boolean
Default: True
New in version v1.13.0.
- DD_CIVISIBILITY_LOG_LEVEL#
Configures the
CIVisibilityservice to replace the default Datadog logger’s stream handler with one that only displays messages related to theCIVisibilityservice, at a level of or higher than the given log level. The Datadog logger’s file handler is unaffected. Valid, case-insensitive, values arecritical,error,warning,info, ordebug. A value ofnonesilently disables the logger. Note: enabling debug logging with theDD_TRACE_DEBUGenvironment variable overrides this behavior.Type: String
Default: info
New in version v2.5.0.
- DD_TEST_SESSION_NAME#
Configures the
CIVisibilityservice to use the given string as the value of thetest_session.nametag in test events. If not specified, this string will be constructed from the CI job id (if available) and the test command used to start the test session.Type: String
Default: (autodetected)
New in version v2.16.0.
- DD_PYTEST_USE_NEW_PLUGIN_BETA#
Configures the
CIVisibilityservice to use a beta release of the new version of the pytest plugin, supporting Auto Test Retries, Early Flake Detection, and improved coverage collection for Test Impact Analysis. This version of the plugin will become the default in the future. See the release notes for v2.18.0 for more information.Type: Boolean
Default: (no value)
New in version v2.18.0.
- DD_CIVISIBILITY_RUM_FLUSH_WAIT_MILLIS#
Configures how long, in milliseconds, the Selenium integration will wait after invoking the RUM flush function during calls to the driver’s
quit()orclose()methods. This helps ensure that the call to the asynchronous function finishes before the driver is closed.Type: Integer
Default: 500
New in version v2.18.0.
Agent#
- DD_AGENT_HOST#
The host name to use to connect the Datadog agent for traces. The host name can be IPv4, IPv6, or a domain name. If
DD_TRACE_AGENT_URLis specified, the value ofDD_AGENT_HOSTis ignored.Example for IPv4:
DD_AGENT_HOST=192.168.10.1Example for IPv6:
DD_AGENT_HOST=2001:db8:3333:4444:CCCC:DDDD:EEEE:FFFFExample for domain name:
DD_AGENT_HOST=hostType: String
Default:
localhostNew in version v0.17.0.
New in version v1.7.0.
- DD_DOGSTATSD_URL#
The URL to use to connect the Datadog agent for Dogstatsd metrics. The url can start with
udp://to connect using UDP or withunix://to use a Unix Domain Socket.Example for UDP url:
DD_DOGSTATSD_URL=udp://localhost:8125Example for UDS:
DD_DOGSTATSD_URL=unix:///var/run/datadog/dsd.socketType: URL
Default:
unix:///var/run/datadog/dsd.socketif available otherwiseudp://localhost:8125
- DD_PATCH_MODULES#
Override the modules patched for this execution of the program. Must be a list in the
module1:boolean,module2:booleanformat. For example,boto:true,redis:false.Type: String
Default: (no value)
Changed in version v0.55.0: Formerly named
DATADOG_PATCH_MODULES
- DD_SITE#
Specify which site to use for uploading profiles and logs. Set to
datadoghq.euto use EU site.Type: String
Default: datadoghq.com
- DD_TAGS#
Set global tags to be attached to every span. Value must be either comma or space separated. e.g.
key1:value1,key2:value2orkey1:value key2:value2.If a tag value is not supplied the value will be an empty string. e.g.
key1,key2orkey1 key2.Type: String
Default: (no value)
Changed in version v0.38.0: Comma separated support added
Changed in version v0.48.0: Space separated support added
- DD_TRACE_AGENT_TIMEOUT_SECONDS#
The timeout in float to use to connect to the Datadog agent.
Type: Float
Default: 2.0
- DD_TRACE_AGENT_URL#
The URL to use to connect the Datadog agent for traces. The url can start with
http://to connect using HTTP or withunix://to use a Unix Domain Socket.Example for http url:
DD_TRACE_AGENT_URL=http://localhost:8126Example for UDS:
DD_TRACE_AGENT_URL=unix:///var/run/datadog/apm.socketType: URL
Default:
unix:///var/run/datadog/apm.socketif available otherwisehttp://localhost:8126
Logs#
- DD_LOGS_INJECTION#
Enables Logs Injection.
Type: Boolean
Default: (no value)
- DD_TRACE_DEBUG#
Enables debug logging in the tracer.
Can be used with DD_TRACE_LOG_FILE to route logs to a file.
Type: Boolean
Default: (no value)
Changed in version v0.41.0: Formerly named
DATADOG_TRACE_DEBUG
- DD_TRACE_LOG_FILE#
Directs ddtrace logs to a specific file. Note: The default backup count is 1. For larger logs, use with
DD_TRACE_LOG_FILE_SIZE_BYTES. To fine tune the logging level, use withDD_TRACE_LOG_FILE_LEVEL.Type: String
Default: (no value)
- DD_TRACE_LOG_FILE_LEVEL#
Configures the
RotatingFileHandlerused by the ddtrace logger to write logs to a file based on the level specified. Defaults to DEBUG, but will accept the values found in the standard logging library, such as WARNING, ERROR, and INFO, if further customization is needed. Files are not written to unlessDD_TRACE_LOG_FILEhas been defined.Type: String
Default: DEBUG
- DD_TRACE_LOG_FILE_SIZE_BYTES#
Max size for a file when used with DD_TRACE_LOG_FILE. When a log has exceeded this size, there will be one backup log file created. In total, the files will store
2 * DD_TRACE_LOG_FILE_SIZE_BYTESworth of logs.Type: Int
Default: 15728640
- DD_TRACE_STARTUP_LOGS#
Enable or disable start up diagnostic logging.
Type: Boolean
Default: (no value)
Sampling#
- DD_SPAN_SAMPLING_RULES#
A JSON array of objects. Each object must have a “name” and/or “service” field, while the “max_per_second” and “sample_rate” fields are optional. The “sample_rate” value must be between 0.0 and 1.0 (inclusive), and will default to 1.0 (100% sampled). The “max_per_second” value must be >= 0 and will default to no limit. The “service” and “name” fields can be glob patterns: “*” matches any substring, including the empty string, “?” matches exactly one of any character, and any other character matches exactly one of itself.
Example:
DD_SPAN_SAMPLING_RULES='[{"sample_rate":0.5,"service":"my-serv*","name":"flask.re?uest"}]'Type: string
Default: (no value)
New in version v1.4.0.
- DD_SPAN_SAMPLING_RULES_FILE#
A path to a JSON file containing span sampling rules organized as JSON array of objects. For the rules each object must have a “name” and/or “service” field, and the “sample_rate” field is optional. The “sample_rate” value must be between 0.0 and 1.0 (inclusive), and will default to 1.0 (100% sampled). The “max_per_second” value must be >= 0 and will default to no limit. The “service” and “name” fields are glob patterns, where “glob” means: “*” matches any substring, including the empty string, “?” matches exactly one of any character, and any other character matches exactly one of itself.
Example:
DD_SPAN_SAMPLING_RULES_FILE="data/span_sampling_rules.json"'Example File Contents:[{"sample_rate":0.5,"service":"*-service","name":"my-name-????", "max_per_second":"20"}, {"service":"xy?","name":"a*c"}]Type: string
Default: (no value)
New in version v1.4.0.
- DD_TRACE_RATE_LIMIT#
Maximum number of traces per second to sample. Set a rate limit to avoid the ingestion volume overages in the case of traffic spikes. This configuration is only applied when client based sampling is configured, otherwise agent based rate limits are used.
Type: int
Default: 100
New in version v0.33.0.
Changed in version v2.15.0: Only applied when DD_TRACE_SAMPLE_RATE, DD_TRACE_SAMPLING_RULES, or DD_SPAN_SAMPLING_RULE are set.
- DD_TRACE_SAMPLING_RULES#
A JSON array of objects. Each object must have a “sample_rate”, and the “name”, “service”, “resource”, and “tags” fields are optional. The “sample_rate” value must be between 0.0 and 1.0 (inclusive).
Example:
DD_TRACE_SAMPLING_RULES='[{"sample_rate":0.5,"service":"my-service","resource":"my-url","tags":{"my-tag":"example"}}]'Note that the JSON object must be included in single quotes (’) to avoid problems with escaping of the double quote (”) character.’
Type: JSON array
Default: (no value)
Changed in version v1.19.0: added support for “resource”
Changed in version v1.20.0: added support for “tags”
Changed in version v2.8.0: added lazy sampling support, so that spans are evaluated at the end of the trace, guaranteeing more metadata to evaluate against.
Other#
- DD_COMPILE_DEBUG#
Compile Cython extensions in RelWithDebInfo mode (with debug info, but no debug code or asserts)
Type: Boolean
Default: (no value)
- DD_INSTRUMENTATION_TELEMETRY_ENABLED#
Enables sending telemetry events to the agent.
Type: Boolean
Default: True
- DD_RUNTIME_METRICS_ENABLED#
When used with
ddtrace-runthis configuration enables sending runtime metrics to Datadog. These metrics track the memory management and concurrency of the python runtime. Refer to the following docs <https://docs.datadoghq.com/tracing/metrics/runtime_metrics/python/> _ for more information.Type: Boolean
Default: (no value)
- DD_SUBPROCESS_SENSITIVE_WILDCARDS#
Add more possible matches to the internal list of subprocess execution argument scrubbing. Must be a comma-separated list and each item can take fnmatch style wildcards, for example:
*ssn*,*personalid*,*idcard*,*creditcard*.Type: String
Default: (no value)
- DD_USER_MODEL_EMAIL_FIELD#
Field to be used to read the user email when using a custom
Usermodel for the automatic login events. This field will take precedence over automatic inference.Type: String
Default: (no value)
New in version v1.15.0.
- DD_USER_MODEL_LOGIN_FIELD#
Field to be used to read the user login when using a custom
Usermodel for the automatic login events. This field will take precedence over automatic inference. Please note that, if set, this field will be used to retrieve the user login even ifDD_APPSEC_AUTOMATED_USER_EVENTS_TRACKINGis set tosafeand, in some cases, the selected field could hold potentially private information.Type: String
Default: (no value)
New in version v1.15.0.
- DD_USER_MODEL_NAME_FIELD#
Field to be used to read the user name when using a custom
Usermodel for the automatic login events. This field will take precedence over automatic inference.Type: String
Default: (no value)
New in version v1.15.0.
Profiling#
- DD_PROFILING__FORCE_LEGACY_EXPORTER#
Exclusively used in testing environments to force the use of the legacy exporter. This parameter is not for general use and will be removed in the near future.
Type: Boolean
Default: False
- DD_PROFILING_AGENTLESS#
Type: Boolean
Default: False
- DD_PROFILING_API_TIMEOUT#
The timeout in seconds before dropping events if the HTTP API does not reply.
Type: Float
Default: 10.0
- DD_PROFILING_CAPTURE_PCT#
The percentage of events that should be captured (e.g. memory allocation). Greater values reduce the program execution speed. Must be greater than 0 lesser or equal to 100.
Type: Float
Default: 1.0
- DD_PROFILING_ENABLE_ASSERTS#
Whether to enable debug assertions in the profiler code.
Type: Boolean
Default: False
- DD_PROFILING_ENABLE_CODE_PROVENANCE#
Whether to enable code provenance.
Type: Boolean
Default: True
- DD_PROFILING_ENABLED#
Enable Datadog profiling when using
ddtrace-run.Type: Boolean
Default: False
- DD_PROFILING_ENDPOINT_COLLECTION_ENABLED#
Whether to enable the endpoint data collection in profiles.
Type: Boolean
Default: True
- DD_PROFILING_IGNORE_PROFILER#
Deprecated: whether to ignore the profiler in the generated data.
Type: Boolean
Default: False
- DD_PROFILING_MAX_EVENTS#
Type: Integer
Default: 16384
- DD_PROFILING_MAX_FRAMES#
The maximum number of frames to capture in stack execution tracing.
Type: Integer
Default: 64
- DD_PROFILING_MAX_TIME_USAGE_PCT#
The percentage of maximum time the stack profiler can use when computing statistics. Must be greater than 0 and lesser or equal to 100.
Type: Float
Default: 1.0
- DD_PROFILING_OUTPUT_PPROF#
Type: String
Default: None
- DD_PROFILING_SAMPLE_POOL_CAPACITY#
The number of Sample objects to keep in the pool for reuse. Increasing this can reduce the overhead from frequently allocating and deallocating Sample objects.
Type: Integer
Default: 4
- DD_PROFILING_TAGS#
The tags to apply to uploaded profile. Must be a list in the
key1:value,key2:value2format.Type: Mapping
Default: {}
- DD_PROFILING_TIMELINE_ENABLED#
Whether to add timestamp information to captured samples. Adds a small amount of overhead to the profiler, but enables the use of the Timeline view in the UI.
Type: Boolean
Default: False
- DD_PROFILING_UPLOAD_INTERVAL#
The interval in seconds to wait before flushing out recorded events.
Type: Float
Default: 60.0
- DD_PROFILING_STACK_ENABLED#
Whether to enable the stack profiler.
Type: Boolean
Default: True
- DD_PROFILING_STACK_V2_ENABLED#
Whether to enable the v2 stack profiler. Also enables the libdatadog collector.
Type: Boolean
Default: True
- DD_PROFILING_PYTORCH_ENABLED#
Whether to enable the PyTorch profiler.
Type: Boolean
Default: False
- DD_PROFILING_PYTORCH_EVENTS_LIMIT#
How many events the PyTorch profiler records each collection.
Type: Integer
Default: 1000000
- DD_PROFILING_MEMORY_ENABLED#
Whether to enable the memory profiler.
Type: Boolean
Default: True
- DD_PROFILING_MEMORY_EVENTS_BUFFER#
Type: Integer
Default: 16
- DD_PROFILING_LOCK_ENABLED#
Whether to enable the lock profiler.
Type: Boolean
Default: True
- DD_PROFILING_LOCK_NAME_INSPECT_DIR#
Whether to inspect the
dir()of local and global variables to find the name of the lock. With this enabled, the profiler finds the name of locks that are attributes of an object.Type: Boolean
Default: True
- DD_PROFILING_HEAP_ENABLED#
Whether to enable the heap memory profiler.
Type: Boolean
Default: True
- DD_PROFILING_HEAP_SAMPLE_SIZE#
Type: Integer
Default: None
- DD_PROFILING_EXPORT_LIBDD_ENABLED#
Enables collection and export using a native exporter. Can fallback to the pure-Python exporter.
Type: Boolean
Default: False
Dynamic Instrumentation#
- DD_DYNAMIC_INSTRUMENTATION_DIAGNOSTICS_INTERVAL#
Interval in seconds for periodically emitting probe diagnostic messages.
Type: Integer
Default: 3600
- DD_DYNAMIC_INSTRUMENTATION_ENABLED#
Enable Dynamic Instrumentation.
Type: Boolean
Default: False
- DD_DYNAMIC_INSTRUMENTATION_MAX_PAYLOAD_SIZE#
Maximum size in bytes of a single configuration payload that can be handled per request.
Type: Integer
Default: 1048576
- DD_DYNAMIC_INSTRUMENTATION_METRICS_ENABLED#
Enable Dynamic Instrumentation diagnostic metrics.
Type: Boolean
Default: True
- DD_DYNAMIC_INSTRUMENTATION_REDACTED_IDENTIFIERS#
List of identifiers/object attributes/dict keys to redact from dynamic logs and snapshots.
Type: List
Default: set()
- DD_DYNAMIC_INSTRUMENTATION_REDACTED_TYPES#
List of object types to redact from dynamic logs and snapshots.
Type: List
Default: set()
- DD_DYNAMIC_INSTRUMENTATION_UPLOAD_FLUSH_INTERVAL#
Interval in seconds for flushing the dynamic logs upload queue.
Type: Float
Default: 1.0
- DD_DYNAMIC_INSTRUMENTATION_UPLOAD_TIMEOUT#
Timeout in seconds for uploading Dynamic Instrumentation payloads.
Type: Integer
Default: 30
Exception Replay#
- DD_EXCEPTION_REPLAY_ENABLED#
Enable automatic capturing of exception debugging information.
Type: Boolean
Default: False