Instruments .NET applications with Elastic OpenTelemetry (EDOT) for automatic tracing, metrics, and logs. Use when adding observability to .NET services without an existing APM agent.
How this skill is triggered — by the user, by Claude, or both
Slash command
/elastic-observability:edot-dotnet-instrumentThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Read the setup guide before making changes:
Read the setup guide before making changes:
Elastic.OpenTelemetry and OpenTelemetry.Instrumentation.AspNetCore (for ASP.NET Core apps)builder.AddElasticOpenTelemetry() on the IHostApplicationBuilder (in Program.cs
or equivalent). Without this, no telemetry is collectedOTEL_SERVICE_NAMEOTEL_EXPORTER_OTLP_ENDPOINT — must be the managed OTLP endpoint or EDOT Collector URL. Never use an APM
Server URL (no apm-server, no :8200, no /intake/v2/events)OTEL_EXPORTER_OTLP_HEADERS — "Authorization=ApiKey <key>" or "Authorization=Bearer <token>"OTEL_TRACES_EXPORTER, OTEL_METRICS_EXPORTER, or OTEL_LOGS_EXPORTER — the defaults are already
correctTracerProvider or MeterProvider — AddElasticOpenTelemetry() handles everythingElastic.Apm.*) and EDOT on the same applicationSee the EDOT .NET setup guide for complete examples.
npx claudepluginhub adamxandria/elastic-agent-skills --plugin elastic-observability2plugins reuse this skill
First indexed Jul 8, 2026
Instruments .NET applications with Elastic OpenTelemetry (EDOT) for automatic tracing, metrics, and logs. Use when adding observability to .NET services without an existing APM agent.
Configures and instruments OpenTelemetry in .NET/ASP.NET Core services: DI/builder SDK setup, native ActivitySource/Meter APIs, ILogger integration, zero-code CLR-profiler agent, contrib packages, performance tuning, and breaking-change audits.
Configures OpenTelemetry traces, metrics, and logs for .NET applications with OTLP export, IMeterFactory, and Aspire Dashboard integration.