Serilog 在 Reliable Actor Services 中不起作用

Serilog doesn't work in Reliable Actor Services

我有两个 Service Fabric 应用程序。第一个是 Asp.Net Core Service Fabric,第二个是 运行 带有计时器的 Actor Service。

两者均使用 Serilog 进行设置。 Asp.Net 核心工作得很好。没问题,但第二个服务,Actor 服务,我使用相同的配置和相同的 nuget 包,但 Serilog 不保存任何日志。

添加配置

<add key="serilog:using:Seq" value="Serilog.Sinks.Seq" />
    <add key="serilog:write-to:Seq.serverUrl" value="http://*****" />
    <add key="serilog:write-to:Seq.apiKey" value="UfKpKLicyZI3hGe7Vc" />
    <add key="serilog:using:RollingFile" value="Serilog.Sinks.RollingFile" />
    <add key="serilog:write-to:RollingFile.pathFormat" value="C:\File-{Date}.txt" />
    <add key="serilog:write-to:RollingFile.retainedFileCountLimit" value="10" />

此处最可能的原因是 Serilog Logger 在托管 actor 的进程关闭之前未 Dispose()d(如果您正在设置静态 Log class 而不是直接使用记录器实例,这是通过 Log.CloseAndFlush()).

实现的