微服务集中式日志记录的实现与应用
1. 添加 Serilog
在 .NET 应用程序中,有多个第三方框架可扩展日志记录功能和选项,如 Serilog、Loggr、Elmah.io 和 NLog 等。这里我们选择探索 Serilog,它扩展了 Microsoft.Extensions.Logging
,能在保留原框架强大功能和灵活性的同时,轻松覆盖默认设置。
1.1 安装 Serilog
对于 ASP.NET Core 项目,需要安装 Serilog.AspNetCore
包;对于非 Web 的 .NET Core 项目,则使用 Serilog.Extensions.Hosting
。
Install-package Serilog.AspNetCore
1.2 理解 Sink
Serilog 引入了 Sink 的概念,它类似于日志记录提供程序,代表框架写入日志的输出通道。要支持特定的 Sink,需添加相应的包。常见的 Sink 有 Console、File、Seq、SQL Server 和 Azure Application Insights 等,完整列表可查看 GitHub wiki 页面 。
1.3 配置 Serilog
为了配置 Serilog 使用文