diff --git a/src/Elastic.Documentation.ServiceDefaults/Elastic.Documentation.ServiceDefaults.csproj b/src/Elastic.Documentation.ServiceDefaults/Elastic.Documentation.ServiceDefaults.csproj index 155e8056c..4a0b3ffd0 100644 --- a/src/Elastic.Documentation.ServiceDefaults/Elastic.Documentation.ServiceDefaults.csproj +++ b/src/Elastic.Documentation.ServiceDefaults/Elastic.Documentation.ServiceDefaults.csproj @@ -9,6 +9,7 @@ + diff --git a/src/Elastic.Documentation.ServiceDefaults/Extensions.cs b/src/Elastic.Documentation.ServiceDefaults/Extensions.cs index 6d415040a..4ee199ede 100644 --- a/src/Elastic.Documentation.ServiceDefaults/Extensions.cs +++ b/src/Elastic.Documentation.ServiceDefaults/Extensions.cs @@ -47,7 +47,7 @@ public static TBuilder ConfigureOpenTelemetry(this TBuilder builder) w logging.IncludeScopes = true; }); - _ = builder.Services.AddOpenTelemetry() + _ = builder.Services.AddElasticOpenTelemetry() .WithMetrics(metrics => { _ = metrics.AddAspNetCoreInstrumentation() @@ -79,17 +79,18 @@ private static TBuilder AddOpenTelemetryExporters(this TBuilder builde { var useOtlpExporter = !string.IsNullOrWhiteSpace(builder.Configuration["OTEL_EXPORTER_OTLP_ENDPOINT"]); - if (useOtlpExporter) + if (!useOtlpExporter) + return builder; + + // Configure delta temporality for Elasticsearch compatibility + // See: https://www.elastic.co/docs/reference/opentelemetry/compatibility/limitations#histograms-in-delta-temporality-only + _ = builder.Services.Configure(options => { - // Configure delta temporality for Elasticsearch compatibility - // See: https://www.elastic.co/docs/reference/opentelemetry/compatibility/limitations#histograms-in-delta-temporality-only - _ = builder.Services.Configure(options => - { - options.TemporalityPreference = MetricReaderTemporalityPreference.Delta; - }); + options.TemporalityPreference = MetricReaderTemporalityPreference.Delta; + }); + + _ = builder.Services.AddOpenTelemetry().UseOtlpExporter(); - _ = builder.Services.AddOpenTelemetry().UseOtlpExporter(); - } // Uncomment the following lines to enable the Azure Monitor exporter (requires the Azure.Monitor.OpenTelemetry.AspNetCore package) //if (!string.IsNullOrEmpty(builder.Configuration["APPLICATIONINSIGHTS_CONNECTION_STRING"]))