log4net日志文件的应用

日志作为快速定位程序问题的主要手段,日志几乎是所有程序都必须拥有的一部分,下面我们就看下怎么使用log4net.dll文件:

1.下载log4net.dll文件

2.创建自己的项目

3.在自己项目下的引用log4net.dll文件

4.在app.config配置文件里添加配置信息,下面贴出配置信息,大家直接复制到app.config文件下就可以了

贴的代码

<configSections><section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/></configSections><log4net><!-- 日志文件配置--><root><level value="ALL"/><!--按文件存储日志--><appender-ref ref="DebugAppender"/><appender-ref ref="InfoAppender"/><appender-ref ref="ErrorAppender" /></root><appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender"><param name="File" value=".\\Logs\\Error\\" /><!--日志记录的存在路--><param name="AppendToFile" value="true" /><!--为true就表示日志会附加到文件,为false,则会重新创建一个新文件--><param name="MaxSizeRollBackups" value="30" /><!--创建最大文件数--><!--<param name="MaxFileSize" value="10240" />--><!--文件大小--><param name="StaticLogFileName" value="false" /><!--是否指定文件名--><param name="DatePattern" value="yyyy-MM-dd&quot;.log&quot;"/><!--文件格式--><param name="RollingStyle" value="Date" /><!--创建新文件的方式,可选为Size(按文件大小),Date(按日期),Once(每启动一次创建一个文件),Composite(按日期及文件大小),默认为Composite--><layout type="log4net.Layout.PatternLayout"><!--输出内容布局--><param name="ConversionPattern" value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" /><!--method会影响性能--></layout><filter type="log4net.Filter.LevelRangeFilter"><param name="LevelMin" value="ERROR" /><param name="LevelMax" value="ERROR" /></filter></appender><appender name="InfoAppender" type="log4net.Appender.RollingFileAppender"><param name="File" value=".\\Logs\\Info\\" /><param name="AppendToFile" value="true" /><param name="MaxSizeRollBackups" value="30" /><param name="StaticLogFileName" value="false" /><param name="DatePattern" value="yyyy-MM-dd&quot;.log&quot;" /><param name="RollingStyle" value="Date" /><layout type="log4net.Layout.PatternLayout"><param name="ConversionPattern" value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" /></layout><filter type="log4net.Filter.LevelRangeFilter"><param name="LevelMin" value="INFO" /><param name="LevelMax" value="INFO" /></filter></appender><appender name="DebugAppender" type="log4net.Appender.RollingFileAppender"><param name="File" value=".\\Logs\\Debug\\" /><param name="AppendToFile" value="true" /><param name="MaxSizeRollBackups" value="30" /><param name="StaticLogFileName" value="false" /><param name="DatePattern" value="yyyy-MM-dd&quot;.log&quot;" /><param name="RollingStyle" value="Date" /><layout type="log4net.Layout.PatternLayout"><param name="ConversionPattern" value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" /></layout><filter type="log4net.Filter.LevelRangeFilter"><param name="LevelMin" value="DEBUG" /><param name="LevelMax" value="DEBUG" /></filter></appender></log4net>
View Code

app.config所有代码

<?xml version="1.0" encoding="utf-8" ?>
<configuration><configSections><section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/><sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"><section name="SunCreate.CombatPlatform.Client.NamePipe.PipeServerProcess.set" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false"/></sectionGroup></configSections><log4net><!-- 日志文件配置--><root><level value="ALL"/><!--按文件存储日志--><appender-ref ref="DebugAppender"/><appender-ref ref="InfoAppender"/><appender-ref ref="ErrorAppender" /></root><appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender"><param name="File" value=".\\Logs\\Error\\" /><!--日志记录的存在路--><param name="AppendToFile" value="true" /><!--为true就表示日志会附加到文件,为false,则会重新创建一个新文件--><param name="MaxSizeRollBackups" value="30" /><!--创建最大文件数--><!--<param name="MaxFileSize" value="10240" />--><!--文件大小--><param name="StaticLogFileName" value="false" /><!--是否指定文件名--><param name="DatePattern" value="yyyy-MM-dd&quot;.log&quot;"/><!--文件格式--><param name="RollingStyle" value="Date" /><!--创建新文件的方式,可选为Size(按文件大小),Date(按日期),Once(每启动一次创建一个文件),Composite(按日期及文件大小),默认为Composite--><layout type="log4net.Layout.PatternLayout"><!--输出内容布局--><param name="ConversionPattern" value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" /><!--method会影响性能--></layout><filter type="log4net.Filter.LevelRangeFilter"><param name="LevelMin" value="ERROR" /><param name="LevelMax" value="ERROR" /></filter></appender><appender name="InfoAppender" type="log4net.Appender.RollingFileAppender"><param name="File" value=".\\Logs\\Info\\" /><param name="AppendToFile" value="true" /><param name="MaxSizeRollBackups" value="30" /><param name="StaticLogFileName" value="false" /><param name="DatePattern" value="yyyy-MM-dd&quot;.log&quot;" /><param name="RollingStyle" value="Date" /><layout type="log4net.Layout.PatternLayout"><param name="ConversionPattern" value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" /></layout><filter type="log4net.Filter.LevelRangeFilter"><param name="LevelMin" value="INFO" /><param name="LevelMax" value="INFO" /></filter></appender><appender name="DebugAppender" type="log4net.Appender.RollingFileAppender"><param name="File" value=".\\Logs\\Debug\\" /><param name="AppendToFile" value="true" /><param name="MaxSizeRollBackups" value="30" /><param name="StaticLogFileName" value="false" /><param name="DatePattern" value="yyyy-MM-dd&quot;.log&quot;" /><param name="RollingStyle" value="Date" /><layout type="log4net.Layout.PatternLayout"><param name="ConversionPattern" value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" /></layout><filter type="log4net.Filter.LevelRangeFilter"><param name="LevelMin" value="DEBUG" /><param name="LevelMax" value="DEBUG" /></filter></appender></log4net><startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /></startup>
</configuration>
View Code

5.在AssemblyInfo.cs文件下添加一句配置信息:[assembly: log4net.Config.XmlConfigurator(Watch = true)],如下图

6.在需要打日志的文件里引用using log4net,然后添加Ilog变量就可以使用日志功能,如下图:

 

 

下面是打出的日志文件:

 

 至此log4net.dll文件我想你已经都会用了,希望对你有帮助。

最后最后最后,重要的事情说三遍,来着是客,如果您觉得好就推荐或评论下,觉得不好希望能得到您的建议,继续改善.

 

转载于:https://www.cnblogs.com/sxw117886/p/9522054.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/485268.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CSMA/CD协议分析笔记

CSMA/CD协议分析笔记 CSMA/CD(carrier sense multiple access with collision detection) 文章目录CSMA/CD协议分析笔记前言一、解读CS MA / CDCS——“载波监听”MA——“多点接入”CD——“碰撞(冲突)检测”二、传播时延对载波监听的影响为什么先听后发还是会产生冲突&#…

【剑指offer】面试题52:两个链表的第一个公共节点(java)

输入两个链表&#xff0c;找出它们的第一个公共节点。 如下面的两个链表&#xff1a; 在节点 c1 开始相交。 示例 1&#xff1a; 输入&#xff1a;intersectVal 8, listA [4,1,8,4,5], listB [5,0,1,8,4,5], skipA 2, skipB 3 输出&#xff1a;Reference of the node wit…

城市大脑全球标准研究1:城市大脑产生的时代背景是什么?

来源&#xff1a;城市大脑全球标准研究组20世纪10年代以来&#xff0c;IT科技领域出现了很多“大脑”“神经系统”概念&#xff0c;如互联网大脑、谷歌大脑、百度大脑、360安全大脑、华为城市神经系统等等&#xff0c;城市大脑是其中一个。这是一个有趣的现象&#xff0c;为什么…

李书福:对未来世界及汽车发展的六个洞见(附万字内部讲话全文)

来源&#xff1a;东西智库2月20日&#xff0c;一直被外界誉为缔造汽车行业传奇的吉利控股集团董事长李书福以“守正出奇 实事求是”为主题在集团内部进行了分享交流&#xff0c;在这场万字内部分享中&#xff0c;李书福从国内国际双循环之机遇和挑战&#xff0c;企业治理能力、…

JSP的“三指六动九内”

JavaWeb——JSP的“三指六动九内” JSP的基本使用 1. JSP模板元素 网页的静态内容。如html标签 JSP脚本 2. JSP的脚本 2.1、小脚本<% Java代码%> 2.2、表达式<% 11%>&#xff0c;等价于out.print(11) 2.3、声明<%! 声明变量和方法%> 3. JSP注释 JSP注释…

基于IPP-FFT的线性调频Z(Chirp-Z,CZT)的C++类库封装并导出为dll(固定接口支持更新)

上一篇分析了三种不同导出C++类方法的优缺点,同时也讲了如何基于IPP库将FFT函数封装为C++类库,并导出为支持更新的dll库供他人调用。 在此基础上,结合前面的CZT的原理及代码实现,可以很容易将CZT变换也封装为C++类库并导出为dll,关于CZT的原理和实现,如有问题请参考: …

梦境交互:做个现代灵媒,考虑一下?

来源&#xff1a;脑极体睡眠几乎占据人生的三分之一时间&#xff0c;做梦又是睡眠中必不可少的生理活动。很多人常常把“无梦之眠”看作是一个人精神状态好的标志&#xff0c;但事实上做梦常常发生&#xff0c;只是很多人在醒来后完全忘记自己做过梦而已。研究表明&#xff0c;…

使用浏览器获取网页模板(HTML+CSS)

使用浏览器获取网页模板(HTMLCSS) 一、获取网页的源代码 进入网页&#xff0c;使用快捷键CtrlU查看网页源代码&#xff0c;也可以单击鼠标右键选择查看网页源代码获取。 网页源代码&#xff1a; 将网页源代码CtrlA全选&#xff0c;CtrlC复制 在网页编辑器中新建一个HTML文…

基于MATLAB的Sobel边缘检测算法实现

图像边缘就是图像灰度值突变的地方&#xff0c;也就是图像在该部分的像素值变化速度非常之快&#xff0c;就比如在坐标轴上一条曲线有刚开始的平滑突然来个大转弯&#xff0c;在变化出的导数非常大。 Sobel算子主要用作边缘检测&#xff0c;它是一离散型差分算子&#xff0c;用…

一文读懂人工智能产业最新发展趋势

来源&#xff1a;世界物联网博览会作者&#xff1a;赛迪智库人工智能产业形势分析课题组当前&#xff0c;以新一代人工智能为代表的科技和产业革命正在孕育兴起。数字化、网络化、智能化的信息基础设施加速构建&#xff0c;以信息通信、生命、材料科学等交叉融合为特征的集成化…

半导体的过去、现在和未来

文章来源&#xff1a;中科院半导体所01半导体是信息化的基础上个世纪半导体大规模集成电路、半导体激光器、以及各种半导体器件的发明&#xff0c;对现代信息技术革命起了至关重要的作用&#xff0c;引发了一场新的全球性产业革命。信息化是当今世界经济和社会发展的大趋势&…

计算机网络——奈氏准则(奈奎斯特定理)

奈奎斯特定理——奈氏准则&#xff08;理想状态&#xff09; 奈氏准则&#xff1a;在理想低通&#xff08;没有噪声、带宽有限&#xff09;的信道中&#xff0c;为了避免码间串扰&#xff0c;极限码元传输率为2WBaud。其中W是理想低通信道的带宽&#xff0c;单位为Hz。若用V表…

计算机网络——CSMA/CD最小帧长相关题目

计算机网络——CSMA/CD最小帧长问题 本篇博客主要讲解有关CSMA/CD最小帧长求解相关例题&#xff0c;关于CSMA/CD详细详解请参考博客&#xff1a;CSMA/CD协议分析笔记 例题一、假定1km长的CSMA/CD网络的数据率为1Gbit/s。设信号在网络上的传输速率为200000km/s。求能够使用此协…

AI式剥削:数据标注人员日薪低至51块钱

来源&#xff1a;AI前线编译&#xff1a;核子可乐、钰莹最新论文指出&#xff0c;AI 行业正在残酷压榨刚刚兴起的全球零工经济体系。现代人工智能依赖各种算法处理规模达数百万的示例、图像或文本素材。但在此之前&#xff0c;首先需要由工作人员在图片数据集中手动标记出对象&…

SpringCloud03 Ribbon知识点、 Feign知识点、利用RestTemplate+Ribbon调用远程服务提供的资源、利用feign调用远程服务提供的资源、熔断...

1 远程服务资源的调用 1.1 古老的套路 在微服务出现之前&#xff0c;所有的远程服务资源必须通过RestTemplate或者HttpClient进行&#xff1b;但是这两者仅仅实现了远程服务资源的调用&#xff0c;并未提供负载均衡实现&#xff0c;所以程序员必须自己实现负载均衡功能&#xf…

一个没有意义的宇宙我们很难想象

© Pixabay来源&#xff1a;利维坦利维坦按&#xff1a;按照人择理论&#xff0c;“被观测的宇宙环境&#xff0c;必须允许观测者的存在”&#xff0c;我们似乎有理由相信&#xff0c;宇宙之存在有赖于观测者&#xff0c;不过&#xff0c;这个观测者一定是我们人类吗&#…

SpringCloud(二) 服务注册与发现Eureka

1.eureka是干什么的&#xff1f; 上篇说了&#xff0c;微服务之间需要互相之间通信&#xff0c;那么通信就需要各种网络信息&#xff0c;我们可以通过使用硬编码的方式来进行通信&#xff0c;但是这种方式显然不合适&#xff0c;不可能说一个微服务的地址发生变动&#xff0c;那…

Java打印三角形(双层for循环)

Java打印三角形(双层for循环) 1.第一个三角形&#xff1a; 打印样式&#xff1a; 外层for循环控制行数&#xff0c;内层for循环控制“*”的个数 public static void demo01(){//行数&#xff1a;4行for(int i1;i<4;i){/*找规律&#xff1a;第一行&#xff1a;1个*第二行…

深度学习后,图灵奖得主Bengio研究核心是什么?因果表示学习

机器之心报道编辑&#xff1a;魔王、杜伟在近日发表的一篇论文中&#xff0c;图灵奖得主 Yoshua Bengio 等详细介绍了其团队当前的研究重心&#xff1a;将机器学习与因果推理相结合的因果表示学习。研究者不仅全面回顾了因果推理的基础概念&#xff0c;并阐释了其与机器学习的融…

WPF使用Canvas绘制可变矩形

WPF使用Canvas绘制可变矩形 原文:WPF使用Canvas绘制可变矩形版权声明&#xff1a;本文为博主原创文章&#xff0c;未经博主允许不得转载。 https://blog.csdn.net/WANGYAN9110/article/details/38130661 1、问题以及解决办法 最近因为项目需要&#xff0c;需要实现一个位置校对…