Cette page n'est pas encore disponible en français, sa traduction est en cours.
Si vous avez des questions ou des retours sur notre projet de traduction actuel, n'hésitez pas à nous contacter.
Join the Beta!

Autocomplete and search are in public beta.

Requirements

Installation

Run your service with Dynamic Instrumentation enabled, and additionally enable autocomplete and search:

  1. Set the -Ddd.symbol.database.upload.enabled=true flag or the DD_SYMBOL_DATABASE_UPLOAD_ENABLED=true environment variable.
  2. Specify the dd.service and dd.version Unified Service Tags.

Example service startup command:

java \
    -javaagent:dd-java-agent.jar \
    -Ddd.service=<YOUR_SERVICE> \
    -Ddd.env=<YOUR_ENVIRONMENT> \
    -Ddd.version=<YOUR_VERSION> \
    -Ddd.dynamic.instrumentation.enabled=true \
    -Ddd.symbol.database.upload.enabled=true \
    -jar <YOUR_SERVICE>.jar <YOUR_SERVICE_FLAGS>
export DD_SERVICE=<YOUR_SERVICE>
export DD_ENV=<YOUR_ENV>
export DD_VERSION=<YOUR_VERSION>
export DD_DYNAMIC_INSTRUMENTATION_ENABLED=true
export DD_SYMBOL_DATABASE_UPLOAD_ENABLED=true
java \
    -javaagent:dd-java-agent.jar \
    -jar <YOUR_SERVICE>.jar <YOUR_SERVICE_FLAGS>

Note: The -javaagent argument needs to be before -jar, adding it as a JVM option rather than an application argument. For more information, see the Oracle documentation:

# Correct:
$ java -javaagent:dd-java-agent.jar ... -jar my-service.jar -more-flags

# Incorrect:
$ java -jar my-service.jar -javaagent:dd-java-agent.jar ...
  1. After starting your service with Dynamic Instrumentation and autocomplete and search enabled, you can use Dynamic Instrumentation’s IDE-like features on the APM > Dynamic Instrumentation page.

Additional configuration

Third party detection

If autocomplete suggestions do not appear for your package or module, it may be incorrectly recognized as third-party code. The autocomplete and search features use a heuristic to filter out third-party code, which can sometimes lead to accidental misclassification.

To ensure that your code is properly recognized and to enable accurate autocomplete and search functionality, you can configure the third-party detection settings using the following options:

export DD_THIRD_PARTY_EXCLUDES=<LIST_OF_USER_CODE_PACKAGE_PREFIXES>
export DD_THIRD_PARTY_INCLUDES=<LIST_OF_ADDITIONAL_THIRD_PARTY_PACKAGE_PREFIXES>

or:

  -Ddd.third.party.excludes=<LIST_OF_USER_CODE_PACKAGE_PREFIXES> \
  -Ddd.third.party.includes=<LIST_OF_ADDITIONAL_THIRD_PARTY_PACKAGE_PREFIXES> \

Where a list means a comma separated list of package prefixes, for example

export DD_THIRD_PARTY_EXCLUDES=com.mycompany,io.mycompany