使用Log4net 日志系统
2024-09-15 00:18:38
官方文档 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,可以将不同等级的日志输出到不同的文件中
最新文章
- AgilePoint实例属性修改
- Java多线程--线程安全问题的相关研究
- T-SQL 基础学习 02
- JS数组的基本用法
- Wordpress实现站搜索
- Listview 隐藏item
- 【前端JS、后台C#】编码解码。
- 删除Excel中的打印预览留下的打印线
- fafu 1568 Matrix(二分匹配+二分)
- JavaBean讲解 规范
- Winsock编程基继承基础(网络对时程序)
- vs2017 在win10下安装后开始运行asp.net core 项目时出错
- 个股与指数的回归分析(自带python ols 参数解读)
- Codeforces 286B Shifting (看题解)
- 增强 用文本增强修改SAP标准屏幕中的字段名称 属于元素的文本增强
- [VC6] 小谈如何解决VC6.0 open崩溃的问题(已解决)(转)
- Spring学习----- Spring配置文件xml文档的schema约束
- Oracle FND API&ndash;Create User
- springframework resource
- (转)完美解决 Android WebView 文本框获取焦点后自动放大有关问题
热门文章
- win10 处理程序“ExtensionlessUrlHandler-Integrated-4.0”在其模块列表中有一个错误模块“ManagedPipelineHandler”
- 使用vue.js + laravel开发单页面应用
- EmailHelper
- 虚拟现实外包公司—VR游戏你不知道的以及你该知道的WebVR
- vue--数据显示模版上
- 两个python安装模块后 ImportError: No module named
- webpack点滴
- spring-data-redis HashOperations
- html5(二)
- Win10下安装zio