У меня есть служба Windows, которая обрабатывает длительные задачи и никогда не завершает работу, если это не сделано принудительно (например, выключение компьютера). Я хотел бы, чтобы один и тот же экземпляр Serilog работал все время, пока служба Windows работает (по соображениям производительности).
Однако я вижу журналы только после вызова Dispose (), как показано ниже.
var logger = new LoggerConfiguration()
.WriteTo.Seq("http://localhost:5341")
.CreateLogger();
logger.ForContext("TestContext", new { Machine = "TSTDB2" }, true).Information("Test");
logger.Dispose();
Я бы не возражал против задержки в несколько секунд, но ждать, пока экземпляр Serilog не будет удален, для меня не работает. Приветствуются любые решения.
Program.cs
воспроизведении? Вы создаете более одного экземпляра регистратора или назначаете регистратор какому-либо статическому полю? (HTH, просто пытаюсь генерировать идеи.) - person Nicholas Blumhardt   schedule 27.10.2017