使用序列号按Id登录到不同的日志文件



我在我的ASP.NET Core中使用Serilog,它与Microsoft Logging Extension一起使用很好。应用程序正在启动不同的工作流。每个工作流都有自己的id,该id将在应用程序运行期间生成。

现在,每个工作流都将数据记录到全局日志中,我想将工作流中生成的每个日志消息记录到一个单独的日志文件(e.q[workflowid].log(中。

从文档中看,添加文件似乎只有在记录器创建期间才可能。还有其他方法可以做到这一点吗?

您可以为File接收器创建一个包装器,该包装器根据某些属性过滤传递给它的事件。这可能不会太难,Serilog是开源的。

有一个预先存在的库,看起来可以为你做这件事,Serial.Sinks.Map.

最新更新