我正在使用 Serilog - RollingFile Sink,但它将所有数据存储在一个文件中一天。 在我的应用程序中,一天写入 1 GB 日志。所以我想根据日期和大小滚动日志文件。
如何配置 RollingFile Sink 以根据日期和大小滚动文件?
最佳答案
现在 Serilog.Sinks.RollingFile 包已弃用,取而代之的是 Serilog.Sinks.File(参见 github 项目 readme 介绍)。 Serilog.Sinks.File 包已升级以支持文件滚动。 您可以使用以下 Serilog 配置来启用按时间和大小滚动:
"Serilog": {
"Using": ["Serilog.Sinks.File"],
"MinimumLevel": "Debug",
"WriteTo": [
{
"Name": "File",
"Args": {
"path": "logs/log.txt",
"rollingInterval": "Day",
"rollOnFileSizeLimit": true,
"fileSizeLimitBytes": "512",
"retainedFileCountLimit": 3,
"formatter": "Serilog.Formatting.Json.JsonFormatter, Serilog"
}
}
]
}
然后你会得到这样的东西:
关于c# - Serilog - RollingFile Sink 不根据日期和大小滚动文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39821560/