一、配置
以下配置保留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();