Код: Выделить всё
Log.Logger = new LoggerConfiguration()
.Enrich.FromLogContext()
.MinimumLevel.Verbose()
.WriteTo.Console(outputTemplate: "{Timestamp:HH:mm:ss} [{Level:u3}] {Message}{NewLine}{Exception}")
.CreateLogger();
using (var _ = LogContext.PushProperty("Test", "world"))
{
Log.Debug("Hello [{Test}]");
Log.Debug("Hello [{Test}] {Second}.", 1);
}
Код: Выделить всё
15:32:32 [DBG] Hello ["world"]
15:32:32 [DBG] Hello [1] {Second}.
Код: Выделить всё
15:32:32 [DBG] Hello ["world"]
15:32:32 [DBG] Hello ["world"] 1.
Есть ли способ заставить это производить ожидаемый мной вывод журнала? например, с другой конфигурацией регистратора или определением журнала? Я пытался поиграть с обогащением, но, похоже, его невозможно настроить дальше.
Причина, по которой я этого хочу: у меня есть функции, которые вызываются там, где я знаю, что будет установлено свойство push (например, флаг {Id}), но я не передаю это свойство в стек вызовов (ну, я надеюсь избежать его передачи в стек вызовов исключительно для целей ведения журнала).
Подробнее здесь: https://stackoverflow.com/questions/798 ... properties
Мобильная версия