Структурированное ведение журнала с помощью Common.Logging и NLog - PullRequest
0 голосов
/ 21 января 2019

В моем проекте установлена ​​последняя версия Common.Logging (3.4.1) и NLog (4.5.11). Следовали инструкциям, чтобы связать Common.Logging с NLog в app.config, и теперь регистрация работает.

Теперь я хочу иметь структурированное ведение журнала:

private static readonly ILog _logger = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);

var message = new IDontKnowWhat("A structured message for ClientId {ClientId}", ClientId.ToString());
_logger.Info(message);

Выше приведен псевдокод, я не знаю, как создать объект сообщения. И _logger.InfoFormat , кажется, работает с String.Format вместо структурированного ведения журнала.

Обеспечивает ли Common.Logging структурированное ведение журнала, кроме использования ThreadVariablesContext / GlobalVariablesContext / NestedThreadVariablesContext ?

Ответы [ 2 ]

0 голосов
/ 23 января 2019

К счастью для меня, команда разработчиков Common.Logging в настоящее время исправляет это: Common.Logging.NLog45 с поддержкой структурированного ведения журнала # 176

0 голосов
/ 21 января 2019

Оформить заказ serilog для структурированного ведения журнала. Если ваши требования использовать NLog, у serilog также есть приемник NLog.

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