Log4net 日志
概要:
Log4net是一个帮助程序员将日志信息输出到各种目标(控制台、文件、数据库等)的工具。日志是程序的黑匣子,可以通过日志查看系统的运行过程,从而发现系统的问题。日志的作用:将运行过程的步骤、成功失败记录下来,将关键性的数据记录下来,进而分析系统问题所在。因为对于网站来说,不能把异常信息显示给用户,异常信息只能记录到日志。网站出问题后,开发人员查看日志就知道问题所在。
一、如何配置Log4net环境
1、添加“应用程序配置文件”(App.config);
2、在App.config或者Web.config中添加配置:
<log4net> <!-- Define some output appenders --> <appendernameappendername="RollingLogFileAppender"type="log4net.Appender.RollingFileAppender"> <file value="test.txt"/> <appendToFilevalueappendToFilevalue="true"/> <maxSizeRollBackupsvaluemaxSizeRollBackupsvalue="10"/> <maximumFileSizevaluemaximumFileSizevalue="1024KB"/> <rollingStylevaluerollingStylevalue="Size"/> <staticLogFileNamevaluestaticLogFileNamevalue="true"/> <layouttypelayouttype="log4net.Layout.PatternLayout"> <conversionPattern value="%date[%thread] %-5level %logger - %message%newline"/> </layout> </appender> <root> <level value="DEBUG"/> <appender-refrefappender-refref="RollingLogFileAppender"/> </root> </log4net>
3、添加Log4net.dll引用;
4、将log4net.config的属性“复制到输出目录”设置为“始终复制”;
5、初始化:
在程序最开始加入 log4net.Config.XmlConfigurator.Configure()让当前的Log4net起作用;
6、在要打印日志的地方写LonManager.GetLogger(typeof(Program)).Debug("信息");。
通过LonManager.GetLogger()传递要记录的日志类类名获得类ILog,这样在日志文件中就知道这个日志是哪个类输出的了,然后调用Debug方法输出消息。因为一个类内部不止一个地方要打印日志,所以,一般把ILog声明为一个static字段。
7、用Ilog.Error方法输出错误信息,第二个参数可以传递Exception对象。Log.Error("****错误"+ex);
二、Log4NetDemo
<html> <head></head> <body> <pre code_snippet_id="2146508" snippet_file_name="blog_20170123_2_6827063" name="code" class="csharp"> namespace Log4NetDemo { class Program { static void Main(string[] args) { //使用log4net记录日志。 log4net.Config.XmlConfigurator.Configure(); ILog logWriter =log4net.LogManager.GetLogger("Test"); logWriter.Info("消息"); logWriter.Warn("警告"); logWriter.Error("异常"); logWriter.Fatal("错误"); } } }
<strong><span style="font-family:SimHei; font-size:18px"> <img src="http://www.php.cn/20170123115415135?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvV0tYMTgzMzA2OTg1MzQ=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" /> 更多内容,推荐阅读: </span></strong>