C# Serilog.AspNetCore基本使用

一、配置

以下配置保留100个文件

ps:不加"Enrich": "FromLogContext"可能会导致程序直接死机

复制代码
  "Serilog": {
    "MinimumLevel": "Debug",
    "Enrich": ["FromLogContext"],
    "WriteTo": [
      {
        "Name": "File",
        "Args": {
          "path": "logs/info-.txt",
          "restrictedToMinimumLevel": "Information",
          "rollingInterval": "Day",
          "fileSizeLimitBytes": "314572800",
          "rollOnFileSizeLimit": "true",
          "retainedFileCountLimit": 100,
          "outputTemplate": "{Timestamp:yyyy-MM-dd HH:mm:ss.fff} [{Level:u3}] {Message:lj}{NewLine}{Exception}"
        }
      },
      {
        "Name": "File",
        "Args": {
          "path": "logs/error-.txt",
          "restrictedToMinimumLevel": "Error",
          "rollingInterval": "Day",
          "fileSizeLimitBytes": "314572800",
          "rollOnFileSizeLimit": "true",
          "retainedFileCountLimit": 100,
          "outputTemplate": "{Timestamp:yyyy-MM-dd HH:mm:ss.fff} [{Level:u3}] {Message:lj}{NewLine}{Exception}"
        }
      },
      {
        "Name": "File",
        "Args": {
          "path": "logs/warn-.txt",
          "restrictedToMinimumLevel": "Warning",
          "rollingInterval": "Day",
          "fileSizeLimitBytes": "314572800",
          "rollOnFileSizeLimit": "true",
          "retainedFileCountLimit": 100,
          "outputTemplate": "{Timestamp:yyyy-MM-dd HH:mm:ss.fff} [{Level:u3}] {Message:lj}{NewLine}{Exception}"
        }
      },
      {
        "Name": "File",
        "Args": {
          "path": "logs/debug-.txt",
          "restrictedToMinimumLevel": "Debug",
          "rollingInterval": "Day",
          "fileSizeLimitBytes": "314572800",
          "rollOnFileSizeLimit": "true",
          "retainedFileCountLimit": 100,
          "outputTemplate": "{Timestamp:yyyy-MM-dd HH:mm:ss.fff} [{Level:u3}] {Message:lj}{NewLine}{Exception}"
        }
      }
    ]
  }

二、使用

复制代码
            Log.Logger = new LoggerConfiguration()
                .ReadFrom.Configuration(builder.Configuration)
                .CreateLogger();
            builder.Host.UseSerilog();
相关推荐
林川~019 小时前
Unity 万能物理检测工具:射线检测 / 范围检测 / 层级过滤 / 编辑器可视化(可直接拿去用)
游戏·unity·c#·射线检测·通用工具
He BianGu13 小时前
【WPF-VisionMaster】机器视觉通用平台V5.0版本发行说明
opencv·c#·wpf·halcon·机器视觉·visionmaster
tang_042713 小时前
【Hi.Ltd 专题】第9期:Interop 配置互操作(JSON/INI/XML/YAML/注册表/扫码)
经验分享·c#·hi.ltd系列
tang_042719 小时前
【Hi.Ltd 专题】第7期:Threading 采集线程、锁与 LRU 缓存
经验分享·c#·hi.ltd系列
A_nanda19 小时前
C# 界面卡顿:从定位到根治
c#
2501_9307077820 小时前
使用C#代码为新创建的 Word 文档创建目录
c#·word
czhc11400756631 天前
同一个数,两把尺子:六组“看着一样、其实不一样“
c#
花北城1 天前
【C#底层库】access_token授权鉴权验证
c#·鉴权·token·授权
rick9771 天前
C# 动态代理与 DispatchProxy:从原理到实战的完整指南
c#
tang_04271 天前
【Hi.Ltd 专题】第8期:Managements 插件、单例与服务定位
经验分享·c#·hi.ltd系列