Свойства журнала не записываются в Serilog
Например, у меня есть функция doSomething(string a, string b, string c)
, И я хочу протоколировать выполнение функции. Я хочу сделать что-то вроде этого:
Logger.Debug("Method doSomething executed", a, b, c)
чтобы избежать записи параметров в сообщение, строки могут быть очень длинными. Эта функциональность похожа на .Enrich.WithProperty("PropertyName", Value)
, Но я не могу сделать это в конструкторе Logger. Логи пишет в SEQ
,
1 ответ
ForContext()
можно сделать это:
var enriched = Log.ForContext("A", a)
.ForContext("B", b)
.ForContext("C", c);
enriched.Debug("Method doSomething executed");
Все события зарегистрированы через enriched
будет иметь свойства A
, B
а также C
прилагается.