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();
相关推荐
JQLvopkk2 小时前
HslCommunication,一个工具测遍所有 PLC
开发语言·人工智能·c#·交互
下页、再停留2 小时前
【C#桌面客户端系列学习-7】数据查询展示
开发语言·c#·visual studio
QQ14220784493 小时前
从 C# WinForms 到 Flask + SQLite:期刊出版 XML 生成器(JATS)重构实践
sqlite·flask·c#
半亩码田4 小时前
C#转Python第4.7篇:logging:Python 的标准日志库
开发语言·python·c#
宝桥南山4 小时前
.NET 11 - 尝试创建一下AGUIServer和AGUIClient(基于新版.NET SDK for AG-UI)
microsoft·ai·微软·c#·aigc·.net
czhc11400756634 小时前
加在入口还是出口 —— 以及一个“看着像文件夹“的文件
c#
波力海苔夹心脆6755 小时前
C# LINQ 入门到上手:一篇讲透查询语法、常用操作符与延迟执行(含示例与速查表
经验分享·c#·.net·solr·linq
进击的大海贼1 天前
基于C#开发的久坐提醒工具
开发语言·c#
小羊没烦恼!1 天前
关于大型asp.net应用系统的架构-架构的选择
java·服务器·开发语言·前端·c#