Я использую Serilog и хочу распечатать информационное сообщение, содержащее контекстное свойство.Serilog print contextual property
Например:
var logger = Log.ForContext("FirstName", "Yosi");
logger.Information("Hello {FirstName}")
и это работает, как ожидалось, но когда я добавить параметр в журнал сообщений это сам, я получаю неожиданный результат.
var logger = Log.ForContext("FirstName", "Yosi");
logger.Information("Hello {FirstName} {LastName}", "Attias")
Я ожидаю, что результат будет:
Здравствуйте Йоси Attias
, но я получаю:
Здравствуйте Attias {LastName}
Есть ли исправление для этого? я что-то упускаю? или это ошибка?
В настоящее время у меня есть регистратор в моем классе, и в моем методе - где я получить контекст по параметрам Я добавляю контекст в журнал. Например: https://gist.github.com/yosiat/3f98e98ccc586f1ef58a2a23858dd0ee Можно ли изменить шаблон вывода для моего регистратора, чтобы добавить messageId для «messageLogger»? – Yosi
Привет Yosi - нет, выходной шаблон является единственным вариантом (кроме специального кода форматирования) для этого в настоящее время. –