Я новичок в Serilog, и я борюсь с отображением имени класса только тогда, когда это необходимо, без необходимости добавлять {SourceContext:l}
к каждому сообщению журнала. Я знаю, что я могу просто написать код, как:Возможно ли показывать только SourceContext в Serilog, если ForContext <class> был определен
Log.ForContext<Class1>().Verbose("message {SourceContext:l}");
У меня есть регистратор будучи установки, как показано ниже:
var log = new LoggerConfiguration()
.MinimumLevel.Verbose()
.WriteTo
.ColoredConsole(outputTemplate: "{Timestamp:G} [{Level}] {SourceContext} {Message}{NewLine:l}{Exception:l}")
.CreateLogger();
Я надеюсь только имя класса, отображаемый, когда был указан класс как видно здесь.
Log.ForContext<Class1>().Verbose("message");
И не отображается, если журнал создан как.
Log.Verbose("message");
Однако на примере выше он будет печатать журнал в формате «{} SourceContext сообщения» вместо просто «сообщения», которое не то, что я хочу.