我有一个 Windows 服务,它处理长时间运行的任务并且永远不会关闭,除非强制这样做(即计算机关闭)。我想在 Windows 服务启动和运行的整个过程中保持同一个 Serilog 实例处于活动状态(出于性能原因)。
但是,我只在 Dispose() 调用之后看到日志,如下所示。
var logger = new LoggerConfiguration()
.WriteTo.Seq("http://localhost:5341")
.CreateLogger();
logger.ForContext("TestContext", new { Machine = "TSTDB2" }, true).Information("Test");
logger.Dispose();
我不介意延迟几秒钟,但必须等到 Serilog 实例被处理后对我来说不起作用。任何解决方案将不胜感激。