使用Log4net 日志系统
官方文档 http://logging.apache.org/log4net/release/config-examples.html
C# 项目中直接使用nuget,下载Apache的log4net依赖包。
在项目的App.config中添加配置
<configSections> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" /> </configSections>
(Section一定要是configuration下的第一个子节点。)
下面是具体的Logger的配置,网上有很多参考,不赘述了。
<log4net> <root> <level value="DEBUG" /> <appender-ref ref="RollingFileAppender" /> <level value="ALL" /> <appender-ref ref="ConsoleAppender" /> </root> <logger name="Test.Logging"> <level value="ALL"/> </logger> <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender" > <!--配置在root注册的appender-ref具体属性--> <!--如果填写的目录已经有同名的文件,会出现不生成日志的情况,在每次测试后,一定记得删除测试文件--> <param name="File" value="../../../../Log//"/> <param name="StaticLogFileName" value="false" /> <param name="DatePattern" value="yyyy-MM-dd.LOG" /> <param name="AppendToFile" value="true"/> <!--不加utf-8编码格式,中文字符将显示成乱码--> <param name="Encoding" value="unicodeFFFE" /> <!--保留的文件数--> <param name= "MaxSizeRollBackups" value= "-1"/> <!--每个日志文件的最大大小--> <!--可用的单位:KB|MB|GB--> <maximumFileSize value="200MB"/> <param name="lockingModel" type="log4net.Appender.FileAppender+MinimalLock" /> <!--输出格式-->> <layout type="log4net.Layout.PatternLayout"> <param name="Header" value=""/> <param name="Footer" value=""/> <param name="ConversionPattern" value="%d %-5p - %m%n" /> </layout> <filter type="log4net.Filter.LevelRangeFilter"> <param name="LevelMin" value="WARN" /> <param name="LevelMax" value="FATAL" /> <!--只将这个范围内的日志保存进文件--> <!--ALL<DEBUG<INFO<WARN<ERROR<FATAL<None--> </filter> </appender> <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender" > <layout type="log4net.Layout.PatternLayout"> <param name="ConversionPattern" value="%d [%t] %-5p - %m%n" /> </layout> </appender> </log4net>
在AssemblyInfor.cs 中加入
[assembly: log4net.Config.XmlConfigurator(Watch = true)]
如果你的日志需要非常的多的配置,可以新开一个配置文件,可以查看他人文档,我并没有进行测试。
在项目入口加入
log4net.Config.XmlConfigurator.Configure();
用于自动加载App.config中配置的日志器属性。
Var logger = log4net.LogManager.GetLogger("Test.Logging");
就可以开始用了。
通过配置不同的filter,可以将不同等级的日志输出到不同的文件中
使用Log4net 日志系统的更多相关文章
- log4net.redis+logstash+kibana+elasticsearch+redis 实现日志系统
前端时间写了个随笔 log4net.NoSql +ElasticSearch 实现日志记录 ,因项目原因需要把日志根java平台的同事集成采用logstash+kibana+elasticsearch ...
- ELK+FileBeat+Log4Net搭建日志系统
ELK+FileBeat+Log4Net搭建日志系统 来源:https://www.zybuluo.com/muyanfeixiang/note/608470 标签(空格分隔): ELK Log4Ne ...
- .NET下日志系统的搭建——log4net+kafka+elk
.NET下日志系统的搭建--log4net+kafka+elk 前言 我们公司的程序日志之前都是采用log4net记录文件日志的方式(有关log4net的简单使用可以看我另一篇博客),但是随着 ...
- 磨刀不误砍柴工——统一日志系统 Log4Net/ExceptionLess
本文版权归博客园和作者吴双本人共同所有,转载和爬虫必须注明原文地址:www.cnblogs.com/tdws . 一. 写在前面 本文Log4Net介绍了基础的方式,大数据量生产环境不能使用,中等 ...
- 【5】基于Log4Net的日志系统
阅读目录 日志系统应具备的特性 Log4Net 配置文件:log4net.config 初始化 输出信息 对Log4Net的封装 log4net.config复杂配置 不管是Web应用程序还是W ...
- 统一日志系统 Log4Net/ExceptionLess
一. 写在前面 本文Log4Net介绍了基础的方式,大数据量生产环境不能使用,中等日志量请日志单库. 希望爱技术的你不要错过exceptionless和ELK 第四节开始简单配置大牛们推荐的了Ex ...
- 2.1 自定义日志系统-log4net
说明 Prism中如果把日志级别设定为DEBUG,会显示框架加载信息 Prism默认是没有日志系统的 步骤 下载log4net包 Install-Package log4net; 在app.confi ...
- [Asp.net 5] Logging-其他日志系统的实现
Microsoft.Framework.Logging.NLog 使用Nlog扩展日志系统:按照我们上节说的,对于扩展的日志系统都要实现俩个接口ILogger.ILoggerProvider.所以在当 ...
- 如何让Log4net日志文件按每月归成一个文件夹,StaticLogFileName参数的用法
想要让Log4net日志(以下称日志)按每月自动归类为一个文件夹,为此,学习和修改了log4net.config文件.查了资料,重点是以下这些参数: <param name=" ...
随机推荐
- Linux 常用命令——文件处理命令
Linux 常用命令 Linux Linux命令格式 命令格式:命令 [-选项] [参数] 例如:ls -a /etc 说明: 1.当有多个选项时,可以写在一起 2.简化选项等于完整选项 -a = - ...
- datatables弹窗报错信息屏蔽方法
在使用datatables的时候,总是会弹出这样的warning: Error: DataTables warning: table id=data_table- Requested unknown ...
- .gitignore无效
有个别文件不想跟踪,比如pycharm的配置文件. 但是这个文件已经被git跟踪的情况下,再加入.gitignore是无效的. 只需要: git rm --cached .idea/workspace ...
- 查看CPU温度
因为不喜欢鲁大师,所以检索看有没有别的软件. 1)先是找到了aida64, 结果好像是要付费的,就没装. 2)因为自己也就想看cpu温度,于是寻思自己编程解决. 找到了下面的文章. 不但介绍了怎么编程 ...
- 流畅的python笔记
鸭子类型协议不完全总结序列:len,getitem切片:getitemv[0]分量的取值和写值:getitem和setitemv.x属性的取值和写值:getattr和setattr迭代:1)iter, ...
- pycharm import scrapy 报错,No module named 'scrapy'
本地通过下载 pip install scrapy安装成功后,在pychram里面 import scrapy报错 后来在找了各种解决方法,重装wheel,twisted,都不行,最后发现是需要改Pr ...
- 常用模块Part(1)
collections模块 time模块 random模块 os模块 sys模块 collections模块 这个模块实现了一些很好的数据结构,它们能帮助你解决各种实际问题 在这里主要介绍几种数据结构 ...
- Linux c读取系统内存使用信息
系统的内存使用信息能够在虚拟文件系统/proc/meminfo中找到,如图 所以只要打开/proc/meminfo文件,然后从中读取信息就好了 #include <stdio.h>#inc ...
- 安装numpy&pandas
https://www.scipy.org/scipylib/download.html 上述网站下载对应自己电脑版本的numpy.我的电脑是win32位,py是3.6的. 然后运行cmd,再按照如下 ...
- 事件对象的属性,基于jQuery(jquery针对不同浏览器进行了兼容性的封装)
1. event.type(该方法是获取到事件的类型) $( 'a' ).click( function( event ){ alert( event.type ); //click return f ...