您的位置:首页 > 编程语言 > ASP

asp.net core 2.0 Microsoft.Extensions.Logging 文本文件日志扩展

2017-08-16 16:13 609 查看
asp.net core微软官方为日志提供了原生支持,有如下实现

Console
Debug
EventLog
AzureAppServices
TraceSource
EventSource
并且在asp.net core项目模板中默认开启Comsole,Debug的日志输出

在实际生产中仅仅是控制台的日志输出是不够的,我们希望使用持久化的载体,例如文本txt文件

Huanent.Logging.File是Microsoft.Extensions.Logging的文本文件日志的实现,使用方法非常简单,详细的步骤已经写在github上,请移步
https://github.com/huanent/Huanent.Logging
 

配置说明:

你可通过 Install-Package Huanent.Logging.File来安装拓展,或者在nuget包浏览器搜索Huanent.Logging.File 安装配置完插件后,你的asp.net core程序会将输出的日志保存在程序根目录下的logs文件夹,并以日期划分文件名
1.安装Huanent.Logging.File
2.在Program.cs文件中添加
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
手动高亮  --> .ConfigureLogging(builder => builder.AddFile())
.Build();

3.配置appsettings.json文件,添加File节点

{
"Logging": {
"IncludeScopes": false,
"Debug": {
"LogLevel": {
"Default": "Warning"
}
},
"Console": {
"LogLevel": {
"Default": "Warning"
}
},
手动高亮  -->  "File": {
手动高亮  -->    "LogLevel": {
手动高亮  -->    "Default": "Wanring" //具体输入级别自行修改,也可添加详细的分类别输出
手动高亮  -->    }
手动高亮  --> }
}
}

配置完成


 

 

为了降低文件读写对性能的影响,插件内部维护了一个消息队列,对消息日志进行异步存储,在本机低配cpu(surface pro4 酷睿M3)测试每秒写入量为1000多条,足以应付大型项目.

 

 

 

 

 

  

  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: