ILogger не возвращает сообщение и объект в формате JSON

#c# #.net-core #nlog #structured-logging

#c# #.net-ядро #nlog #структурированное ведение журнала

Вопрос:

Я пытаюсь использовать ILogger следующим образом,

 _logger.LogInformation("Logging info {someClass}", someClass);
  

Но на выходе получается просто имя объекта.

Что я здесь делаю не так?

Комментарии:

1. Пожалуйста, включите NLog.config. Вы настроили MaxRecursionLimit=10 для JsonLayout: github.com/NLog/NLog/wiki/JsonLayout

Ответ №1:

Вы, вероятно, хотели бы преобразовать класс в свойства.

Это опция, и ее можно включить с помощью @

Итак

 _logger.LogInformation("Logging info {@someClass}", someClass);
  

Смотрите также: Как использовать структурированное ведение журнала
и спецификации шаблонов сообщений

Комментарии:

1. Большое вам спасибо!. Это решило мою проблему с невозможностью передачи объектов из ILogger в NLog.