Instrumenting your application in Docker Compose
Prerequisite: Create an environment in Digma
1. Download the latest OTEL and Digma agents
2. Add a Docker Compose override file
#docker-compose.override.otel.yml
version: '3'
services:
[your-service]:
volumes:
- "./otel/opentelemetry-javaagent.jar:/otel/opentelemetry-javaagent.jar"
- "./otel/digma-agent.jar:/otel/digma-agent.jar"
- "./otel/digma-otel-agent-extension.jar:/otel/digma-otel-agent-extension.jar"
environment:
- JAVA_TOOL_OPTIONS=-javaagent:/otel/digma-agent.jar -javaagent:/otel/opentelemetry-javaagent.jar -Dotel.javaagent.extensions=/otel/digma-otel-agent-extension.jar
- OTEL_SERVICE_NAME=[your-service]
- OTEL_EXPORTER_OTLP_ENDPOINT=http://host.docker.internal:5050
- OTEL_METRICS_EXPORTER=none
- OTEL_LOGS_EXPORTER=none
- OTEL_EXPORTER_OTLP_PROTOCOL=grpc
- OTEL_RESOURCE_ATTRIBUTES=digma.environment=[ENV_NAME],digma.environment.type=Public
- OTEL_INSTRUMENTATION_COMMON_EXPERIMENTAL_CONTROLLER_TELEMETRY_ENABLED=true
- OTEL_INSTRUMENTATION.EXPERIMENTAL_VIEW_TELEMETRY_ENABLED=true
- OTEL_INSTRUMENTATION.EXPERIMENTAL_SPAN_SUPPRESSION_STRATEGY=none
- OTEL_INSTRUMENTATION_JDBC_DATASOURCE_ENABLED=true
extra_hosts:
- "host.docker.internal:host-gateway"3. Run your original Docker Compose file along with the override file
PreviousInstrumenting your code in CI/Staging or the terminalNextInstrumenting your application on Kubernetes
Last updated