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();
相关推荐
小白不白1112 小时前
C# WinForm 与 VP 二次开发
开发语言·c#
SunnyDays10113 小时前
如何使用 C# 自动调整 Excel 行高和列宽
开发语言·c#·excel
itgather4 小时前
OfficeExcel — Word / Excel DLL 验证台功能介绍
c#·word·excel
云中小生4 小时前
Scrutor:.NET 依赖注入自动化的优雅实现
c#·.net
郝亚军4 小时前
Visual Studio 2022项目中的.sln是什么?
c++·c#·visual studio
jghhh014 小时前
C# 图片水印工具(支持9个位置)
数据库·microsoft·c#
咸鱼翻身小阿橙5 小时前
C# WinForms 控件学习项目
开发语言·学习·c#
JaydenAI5 小时前
[MAF预定义Agent中间件-03]FunctionInvocationDelegatingAgent:将AOP引入函数调用
ai·c#·agent·aop·maf
.NET修仙日记5 小时前
.NET 领域驱动设计:用户角色更新如何从应用服务落地到领域实体(代码拆解)
c#·.net·领域驱动设计·微软技术·角色设计