elastic/agent-skills1.6k installs
observability-edot-dotnet-migrate
Migrate a .NET application from the classic Elastic APM .NET agent to the EDOT .NET SDK. Use when switching from Elastic.Apm.* packages to Elastic.OpenTelemetry.
How do I install this agent skill?
npx skills add https://github.com/elastic/agent-skills --skill observability-edot-dotnet-migrateIs this agent skill safe to install?
- Gen Agent Trust Hubpass
The skill provides safe, standard migration guidelines for transitioning .NET applications from classic Elastic APM to the Elastic OpenTelemetry SDK. All references and recommended packages are official vendor resources.
- Socketpass
No alerts
- Snykpass
Risk: LOW · No issues
- Runlayerpass
1/1 file flagged
What does this agent skill do?
EDOT .NET Migration
Read the migration guide before making changes:
Guidelines
- Remove ALL classic APM references:
Elastic.Apm.*NuGet packages (includingElastic.Apm.NetCoreAll),UseAllElasticApm()/AddAllElasticApm()calls, theElasticApmsection fromappsettings.json, and allELASTIC_APM_*env vars - Add NuGet packages:
Elastic.OpenTelemetryandOpenTelemetry.Instrumentation.AspNetCore(for ASP.NET Core apps) - Register EDOT in startup: call
builder.AddElasticOpenTelemetry()on theIHostApplicationBuilder(inProgram.csor equivalent). Without this, no telemetry is collected - Set exactly three required environment variables:
OTEL_SERVICE_NAME(replacesELASTIC_APM_SERVICE_NAME/ElasticApm:ServiceName)OTEL_EXPORTER_OTLP_ENDPOINT— must be the managed OTLP endpoint or EDOT Collector URL. Do NOT reuse the oldELASTIC_APM_SERVER_URLSvalue. 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)
- Do NOT set
OTEL_TRACES_EXPORTER,OTEL_METRICS_EXPORTER, orOTEL_LOGS_EXPORTER— the defaults are already correct - Never run both classic Elastic APM agent (
Elastic.Apm.*) and EDOT on the same application
Examples
See the EDOT .NET migration guide for complete examples.
How can the creator link this skill?
Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.
<a href="https://skillzs.dev/skills/elastic/agent-skills/observability-edot-dotnet-migrate">View observability-edot-dotnet-migrate on skillZs</a>