开源日志记录组件Log4Net怎么用
这篇文章主要介绍了开源日志记录组件Log4Net怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
log4net是.Net下一个非常优秀的开源日志记录组件。log4net记录日志的功能非常强大。它可以将日志分不同的等级,以不同的格式,输出到不同的媒介。
使用步骤
在项目中添加Nuget程序包,搜索并安装Log4Net组件。
在项目中添加一个配置文件,配置log4net的节点内容如下。建议不要使用VS自动创建的App.config文件,因为它会覆盖编译后生成的app.exe.config文件,但该文件的内容可能会有其它的定义,为避免互相干扰,另建一个单独的配置文件,如app.exe.log4net:
<?xml version="1.0" encoding="utf-8"?><configuration> <log4net> <logger name="logerror"> <level value="ERROR"/> <appender-ref ref="ErrorAppender"/> </logger> <logger name="loginfo"> <level value="INFO"/> <appender-ref ref="InfoAppender"/> </logger> <appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender"> <param name="File" value="Log\\LogError\\"/> <param name="AppendToFile" value="true"/> <param name="MaxFileSize" value="10240"/> <param name="MaxSizeRollBackups" value="100"/> <param name="StaticLogFileName" value="false"/> <param name="DatePattern" value="yyyyMMdd".txt""/> <param name="RollingStyle" value="Date"/> <layout type="log4net.Layout.PatternLayout"> <param name="ConversionPattern" value="%date : %m%n"/> </layout> </appender> <appender name="InfoAppender" type="log4net.Appender.RollingFileAppender"> <param name="File" value="Log\\LogInfo\\"/> <param name="AppendToFile" value="true"/> <param name="MaxFileSize" value="10240"/> <param name="MaxSizeRollBackups" value="100"/> <param name="StaticLogFileName" value="false"/> <param name="DatePattern" value="yyyyMMdd".txt""/> <param name="RollingStyle" value="Date"/> <layout type="log4net.Layout.PatternLayout"> <param name="ConversionPattern" value="%date : %m%n"/> </layout> </appender> </log4net></configuration>
在项目的 AssemblyInfo.cs 文件中注册配置文件:
//为项目注册Log4Net.config配置文件[assembly: log4net.Config.XmlConfigurator(ConfigFileExtension = "log4net", Watch = true)]
添加日志类
/// <summary>/// log4net访问类/// </summary>public class LogHelper{ private LogHelper() { } public static readonly log4net.ILog loginfo = log4net.LogManager.GetLogger("loginfo"); public static readonly log4net.ILog logerror = log4net.LogManager.GetLogger("logerror"); public static void SetConfig() { log4net.Config.XmlConfigurator.Configure(); } public static void SetConfig(FileInfo configFile) { log4net.Config.XmlConfigurator.Configure(configFile); } public static void WriteLog(string info) { if (loginfo.IsInfoEnabled) { loginfo.Info(info); } } public static void WriteLog(string info, Exception se) { if (logerror.IsErrorEnabled) { logerror.Error(info, se); } }}
使用日志记录
try{ // 记录正常日志 LogHelper.WriteLog("操作成功!")}catch (Exception ex){ // 记录异常日志 LogHelper.WriteLog("操作失败!", ex);}
从LogHelper类的定义中可以看到,有两个重载的WriteLog方法,只包含单个消息文本参数的WriteLog方法用于记录正常日志,包含两个参数的WriteLog方法用于记录异常日志,需要传入一个Exception实例。
程序会在本地自动创建一个Log文件夹以及LogError和LogInfo两个子文件夹,单个参数的WriteLog方法记录的正常日志自动保存在LogInfo中,两个参数的WriteLog方法记录的异常日志自动保存在LogError中。
日记文本的记录格式可自行通过修改log4net的配置文件来指定,这里定义的是一个简单的输出格式:
“%date : %m%n”
表示日志记录的日期时间 : 消息内容。
感谢你能够认真阅读完这篇文章,希望小编分享的“开源日志记录组件Log4Net怎么用”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网行业资讯频道,更多相关知识等着你来学习!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341