Skip to main content
Source: Al0077DuplicateInstrumentationAnalyzer.cs

Description

Using both automatic instrumentation (e.g., AddAspNetCoreInstrumentation()) and manual spans for the same operation creates duplicate traces.

Bad Code

builder.Services.AddOpenTelemetry()
    .WithTracing(t => t
        .AddAspNetCoreInstrumentation()
        .AddSource("MyService"));
// Then also manually creating spans in middleware for HTTP requests

Good Code

builder.Services.AddOpenTelemetry()
    .WithTracing(t => t
        .AddAspNetCoreInstrumentation()
        .AddSource("MyService.Custom")); // Only custom spans

Properties

  • Category: OpenTelemetry
  • Severity: Warning
  • Enabled by default: True
  • Code fix available: False

Configuration

dotnet_diagnostic.AL0077.severity = warning