Объекты Serilog OpenTelemetrySink, отображаемые как kvlistValue на информационной панели AspireC#

Место общения программистов C#
Anonymous
Объекты Serilog OpenTelemetrySink, отображаемые как kvlistValue на информационной панели Aspire

Сообщение Anonymous »

Когда я регистрирую структурированные объекты с помощью пакета OpenTelemetry для .NET, сложные объекты отображаются на панели управления Aspire в виде строк JSON.
Когда я регистрирую сложные объекты с помощью Serilog OpenTelemetrySink, я вижу что-то вроде
Изображение

Я понимаю, что OpenTelemetry указывает, что сложные объекты отправляются в этом формате, но сборщик должен декодировать их обратно в объект или хотя бы в строку JSON.
Я пытаюсь выяснить если это неправильная конфигурация с моей стороны или это ошибка в OpenTelemetrySink
Моя конфигурация Serilog
services.AddLogging(
loggingBuilder =>
{
//Create Serilog logger from AppSettings.json properties.
LoggerConfiguration loggingConfiguration = new LoggerConfiguration()
.ReadFrom.Configuration(configuration);

string? otelExporterEndpoint = Configuration["OTEL_EXPORTER_OTLP_ENDPOINT"];
if (otelExporterEndpoint != null)
{
loggingConfiguration.WriteTo.OpenTelemetry(
opt =>
{
opt.Endpoint = otelExporterEndpoint;
opt.Protocol = OtlpProtocol.Grpc;
opt.ResourceAttributes = _otelResourceAttributes;
opt.OnBeginSuppressInstrumentation =
SuppressInstrumentationScope.Begin;
opt.IncludedData = IncludedData.TemplateBody | IncludedData.SpanIdField |
IncludedData.TraceIdField | IncludedData.SourceContextAttribute;
});
}

_logger = loggingConfiguration.CreateLogger();
loggingBuilder.AddSerilog(_logger, dispose: true);

// Enable selflog to debug serilog configuration
// SelfLog.Enable(Console.Error);
});


Подробнее здесь: https://stackoverflow.com/questions/790 ... -dashboard

Вернуться в «C#»