O
observability-edot-java-migrate
About observability-edot-java-migrate
This skill guides developers migrating Java applications from classic Elastic APM to EDOT. It explains replacing the legacy agent, attaching the new Java agent, and configuring OTLP export.
Key features
- 01Remove classic APM agent and settings
- 02Use elastic-otel-javaagent.jar
- 03Attach with -javaagent or JAVA_TOOL_OPTIONS
- 04Configure the OTLP endpoint and authorization header
- 05Avoid running both agents on one JVM
Use cases
- 01Migrate a Java service from classic Elastic APM to EDOT
- 02Configure a JVM to load the EDOT Java agent
- 03Set the telemetry service name, endpoint, and authentication
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ elastic/ agent-skills --skill observability-edot-java-migrateAfter installing, type/observability-edot-java-migratein Claude Code to confirm it loaded.
Details
From the project READMEEDOT Java Migration
Read the migration guide before making changes:
Guidelines
- Remove ALL classic APM references:
elastic-apm-agent.jar,elasticapm.properties, allELASTIC_APM_*env vars, and anyco.elastic.apmMaven/Gradle dependencies - Use
elastic-otel-javaagent.jar(download from Maven Central, not a Maven/Gradle compile dependency) - Attach via
-javaagent:/path/to/elastic-otel-javaagent.jarorJAVA_TOOL_OPTIONS="-javaagent:/path/to/elastic-otel-javaagent.jar"— without this the agent does nothing - Set exactly three required environment variables:
OTEL_SERVICE_NAME(replacesELASTIC_APM_SERVICE_NAME)OTEL_EXPORTER_OTLP_ENDPOINT— must be the managed OTLP endpoint or EDOT Collector URL. Do NOT reuse the oldELASTIC_APM_SERVER_URLvalue. Never use an APM Server URL (noapm-server, no:8200, no/intake/v2/events)OTEL_EXPORTER_OTLP_HEADERS—"Authorization=ApiKey <key>"or"Authorization=Bearer <token>"(replacesELASTIC_APM_SECRET_TOKEN/API_KEY)
- Do NOT set
OTEL_TRACES_EXPORTER,OTEL_METRICS_EXPORTER, orOTEL_LOGS_EXPORTER— the defaults are already correct - Never run both classic Elastic APM agent and EDOT agent on the same JVM
Examples
See the EDOT Java migration guide for complete examples.
Comments
Markdown supported