AspNetCoreWebAPI使用Serilog通过配置appsettings记录日志

继上一篇AspNetCore中使用Serilog记录日志 - 点终将连成线 - 博客园 (cnblogs.com)中的日志记录配置都是写死在Program中的,本篇是通过配置文件进行配置日志记录的参数

1、配置文件添加:

"Serilog": {
    "MinimumLevel": {
      "Default": "Error", //最小日志记录级别
      "Override": { //系统日志最小记录级别
        "Default": "Error",
        "System": "Error",
        "Microsoft": "Error"
      }
    },
    "WriteTo": [
      { "Name": "Console" }, //输出到控制台
      {
        "Name": "Async", //异步写入日志
        "Args": {
          "configure": [
            {
              "Name": "File", //输出文件
              "Args": {
                "path": "./Log/log.txt",
                "outputTemplate": "{NewLine}Date:{Timestamp:yyyy-MM-dd HH:mm:ss.fff}{NewLine}LogLevel:{Level}{NewLine}Class:{SourceContext}{NewLine}Message:{Message}{NewLine}{Exception}",
                "rollingInterval": "3" //日志文件生成精度:1:年  2:月 3:日 4:小时
              }
            }
          ]
        }
      }
    ]
  }
View Code

2、安装包

 

3、Program中

 

 

4、实现:

通过全局过滤器捕捉异常并且记录到记事本中

 

 接口尝试写一个错误逻辑:

 

 结果:

 

 记事本中的错误日志:

 

 

 

 --完结

附:通过配置文件的日志路径目前还没找到按照日期的层级目录存放,像下面的结构只能通过写死在Program来实现(AspNetCore中使用Serilog记录日志 - 点终将连成线 - 博客园 (cnblogs.com));

 

posted @ 2022-12-09 14:55  点终将连成线  阅读(152)  评论(0编辑  收藏  举报