Вход в Azure Log Analytics настраиваемых полей с использованием Serilog - PullRequest
1 голос
/ 17 марта 2020

Я новичок в azure, а также ладья ie in. net, так что это может быть нубский вопрос :) В любом случае, мне удалось войти в систему Azure Log Analytics с использованием этого кода фрагмент:

var loggerConfig = new LoggerConfiguration().
            Enrich.WithExceptionDetails().
            Enrich.WithApplicationInformation(serviceName).
            MinimumLevel.Debug().
            MinimumLevel.Override("Microsoft", LogEventLevel.Information).
            Enrich.FromLogContext().
            Destructure.ByTransforming<ExpandoObject>(JsonConvert.SerializeObject).
            //Enrich.WithProperty("ErrorMsg_CF","test").
            WriteTo.AzureAnalytics(workspaceId: "MyWorkSpaceID", 
                                   authenticationId: "MyAuthID",
                                   logName: "MyCustomLog_CL",
                                   restrictedToMinimumLevel: LogEventLevel.Debug)

И:

        Logging.Logger.Initialize(serviceName: "Logging Web Test v1.1");
        Logging.Logger.GetLogger().Log(LogLevel.Debug, "{ErrorMsg_CF}:{TraceID_CF}:{UserName_CF}", errorMsg,traceID,userName);

В своей пользовательской таблице журнала Log Analytics я создал 3 настраиваемых поля: «ErrorMsg_CF», «TraceID_CF» и «UserName_CF», и я хочу либо иметь возможность напрямую регистрироваться в этих настраиваемых полях, либо как-то разделить мою errormsg на эти три настраиваемых поля.

Когда я импортирую файл, я вижу, что сообщение хранится в «RawData» поле, и с этим полем я могу использовать генератор настраиваемых полей и создавать настраиваемые поля, а также позволить Log Analytics разбить сообщение на поля для меня. Но когда я делаю это через свое приложение, сообщение сохраняется в поле «LogMEssage_s», и кажется, что невозможно создать настраиваемые поля из этого поля.

Итак, любой знает, как я могу войти в мои настраиваемые поля из моего приложения?

1 Ответ

1 голос
/ 23 апреля 2020

Конфигурация форматирования по умолчанию - построчное ведение журнала событий. ALN можно проглотить, используя JSON, так что это будет лучший способ отформатировать запись журнала таким способом.

.WriteTo.DESTINATION(new CompactJsonFormatter(), OTHER OPTIONS HERE)

Форматирование Serilog

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...