首页 > 解决方案 > 使用 Serilog 自定义 ASP.NET Core 记录器

问题描述

在我的项目中,我使用 Serilog 和 ASP.Net Core。初始化部分如下所示:

var provider = services.BuildServiceProvider();
var logFactory = provider.GetRequiredService<ILoggerFactory>();
logFactory.AddSerilog().AddConsole();
return provider;

这会将 Serilog 添加到日志记录管道。

我想向记录器添加一个功能,以说明是否存在类型为“警告”的日志,以便生成一些结果消息。例如,它可能是一个返回简单布尔值的方法。

我应该如何以正确的方式做到这一点?我可以通过更改记录器处理“警告”日志的方式以某种方式覆盖当前的核心行为,以便在某处保存 LogWarning 方法已被调用的事实吗?或者我应该实现我自己的记录器(ILogger)以及具有所需功能的 ILoggerFactory 和 ILoggerProvider?但是在那种情况下如何保存 Serilog 部分呢?

标签: c#loggingasp.net-core.net-coreserilog

解决方案


推荐阅读