Если я прокомментирует конфигурацию serilog в программе. Чтобы помочь мне: < /p>
serilog for .net aspire < /li>
Дубликационное имя службы при использовании журнала OTLP < /li>
< /ul>
Здесь стоит наша конфигурация Serilog: < /p>
Код: Выделить всё
// This extension is auto generated when adding Aspire. More on that below..
builder.AddServiceDefaults();
builder.Host.UseSerilog((hostContext, services, loggerConfiguration) => loggerConfiguration
.ReadFrom.Configuration(builder.Configuration)
.Enrich.FromLogContext()
.Enrich.WithPropertiesMasking(builder.Configuration)
.Enrich.WithProperty("ServiceName", DaprConstants.API_SERVICE_NAME)
.Enrich.WithThreadId()
.Enrich.WithCorrelationIdHeader("X-Correlation-ID")
.WriteTo.ApplicationInsights
(
new TelemetryConfiguration() { ConnectionString = builder.Configuration["APPLICATIONINSIGHTS_CONNECTION_STRING"] },
TelemetryConverter.Traces
)
.WriteTo.OpenTelemetry(opts =>
{
opts.Endpoint = builder.Configuration["OTEL_EXPORTER_OTLP_ENDPOINT"]!;
opts.ResourceAttributes.Add("service.name", builder.Configuration["OTEL_SERVICE_NAME"] ?? "Unknown");
})
);
Из вопросов Github , с которыми я связан выше, я также изменил расширения в рамках проекта ServiceEfults , который вызывает Auto, когда вы добавляете Assire
{
if (builder.Environment.IsDevelopment())
{
// We want to view all traces in development
tracing.SetSampler(new AlwaysOnSampler());
}
tracing.AddAspNetCoreInstrumentation()
.AddHttpClientInstrumentation();
});
builder.AddOpenTelemetryExporters();
return builder;
}
private static IHostApplicationBuilder AddOpenTelemetryExporters(this IHostApplicationBuilder builder)
{
var useOtlpExporter = !string.IsNullOrWhiteSpace(builder.Configuration["OTEL_EXPORTER_OTLP_ENDPOINT"]);
if (useOtlpExporter)
{
// In one of the GitHub issues David Fowler suggested commenting this line out.
//builder.Services.Configure(logging => logging.AddOtlpExporter());
builder.Services.ConfigureOpenTelemetryMeterProvider(metrics => metrics.AddOtlpExporter());
builder.Services.ConfigureOpenTelemetryTracerProvider(tracing => tracing.AddOtlpExporter());
}
if (!string.IsNullOrEmpty(builder.Configuration["APPLICATIONINSIGHTS_CONNECTION_STRING"]))
{
builder.Services.AddOpenTelemetry()
.UseAzureMonitor();
}
return builder;
}
}
[/code]
Я не показывал Apphost здесь, так как я не думал, что это имело значение для вышеупомянутой проблемы.>
Подробнее здесь: https://stackoverflow.com/questions/783 ... net-aspire
Мобильная версия