Serilog 在 .NET 6 中的配置示例教程

Serilog 在 .NET 6 中的配置示例教程

dotnet6-serilog-exampleA sample project showing Serilog configured in the default .NET 6 web application template项目地址:https://gitcode.com/gh_mirrors/do/dotnet6-serilog-example

1. 项目的目录结构及介绍

dotnet6-serilog-example/
├── .gitignore
├── LICENSE
├── Program.cs
├── README.md
├── appsettings.Development.json
├── appsettings.json
├── dotnet6-serilog-example.csproj
  • .gitignore: Git 忽略文件配置。
  • LICENSE: 项目许可证文件。
  • Program.cs: 项目的启动文件。
  • README.md: 项目说明文档。
  • appsettings.Development.json: 开发环境下的配置文件。
  • appsettings.json: 默认配置文件。
  • dotnet6-serilog-example.csproj: 项目文件。

2. 项目的启动文件介绍

Program.cs

Program.cs 是 .NET 6 项目的启动文件,其中包含了 Serilog 的初始化配置。以下是关键部分的代码:

using Serilog;

Log.Logger = new LoggerConfiguration()
    .WriteTo.Console()
    .CreateBootstrapLogger();

Log.Information("Starting up");

这段代码在程序启动时初始化 Serilog,并配置日志输出到控制台。CreateBootstrapLogger() 方法设置了一个初始的日志配置,该配置可以在后续的初始化过程中被替换。

3. 项目的配置文件介绍

appsettings.json

appsettings.json 是项目的默认配置文件,包含了 Serilog 的配置信息。以下是一个示例配置:

{
  "Serilog": {
    "Using": [ "Serilog.Sinks.Console", "Serilog.Sinks.Seq" ],
    "MinimumLevel": {
      "Default": "Information",
      "Override": {
        "Microsoft": "Warning",
        "System": "Warning"
      }
    },
    "WriteTo": [
      { "Name": "Console" },
      { "Name": "Seq", "Args": { "serverUrl": "http://localhost:5341" } }
    ],
    "Enrich": [ "FromLogContext", "WithMachineName", "WithThreadId" ],
    "Properties": {
      "Application": "Sample"
    }
  }
}
  • Using: 指定使用的 Serilog 插件。
  • MinimumLevel: 设置日志的最小级别。
  • WriteTo: 配置日志输出目标,这里配置了控制台和 Seq 服务器。
  • Enrich: 配置日志的丰富信息,如日志上下文、机器名和线程ID。
  • Properties: 添加自定义的日志属性。

appsettings.Development.json

appsettings.Development.json 是开发环境下的配置文件,通常会覆盖默认配置文件中的一些设置,以便在开发环境中进行更详细的日志记录。

{
  "Serilog": {
    "MinimumLevel": {
      "Default": "Debug",
      "Override": {
        "Microsoft": "Information",
        "System": "Information"
      }
    }
  }
}

在开发环境中,日志的最小级别被设置为 Debug,以便记录更多的调试信息。

dotnet6-serilog-exampleA sample project showing Serilog configured in the default .NET 6 web application template项目地址:https://gitcode.com/gh_mirrors/do/dotnet6-serilog-example

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

岑姣盼Estra

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值