<PackageReference Include="NetEscapades.Extensions.Logging.RollingFile" Version="2.5.0" />
public static class LoggerExtension
{
public static IServiceCollection AddCustomLogger(this IServiceCollection services, IConfiguration configuration)
{
services.AddLogging(builder =>
{
builder.SetMinimumLevel(configuration.GetSection("Logging:LogLevel:Default").Get<Microsoft.Extensions.Logging.LogLevel>());
builder.AddConsole();
builder.AddFile(options =>
{
configuration.GetSection("Logging:File").Bind(options);
});
});
return services;
}
}
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
},
"File": {
"FileName": "logs-",
"LogDirectory": "Logs", //日志文件保存文件夹
"FileSizeLimit": 20971520, //单文件字节限制
"FilesPerPeriodicityLimit": 200, //周期文件个数限制
"Extension": "txt", //拓展名
"Periodicity": "Daily" //每日 Daily 每月 Monthly
}
},