Я использую Serilog для регистрации и не могу определить, как разделить события журнала на разные файлы. Например, я хочу регистрировать ошибки error_log-ddmmyyyy.txt и предупреждения для warn_log-ddmmyyyy.txt.
Здесь моя конфигурация журнала:
Log.Logger = new LoggerConfiguration()
.WriteTo.Logger(lc =>
lc.Filter.ByIncludingOnly(Matching.WithProperty("Level", "Warning"))
.WriteTo.RollingFile(
Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"Logs\warn_log-{Date}.txt"),
outputTemplate: OutputTemplate))
.WriteTo.Logger(lc =>
lc.Filter.ByIncludingOnly(Matching.WithProperty("Level", "Error"))
.WriteTo.RollingFile(
Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"Logs\error_log-{Date}.txt"),
outputTemplate: OutputTemplate))
.CreateLogger();
Он работает только тогда, когда я определяю свойство {Level} exatcly в сообщении журнала.
Я пытался использовать:
Matching.WithProperty<LogEventLevel>("Level", l => l == LogEventLevel.Warning)
но это тоже не сработало.