首页 > 代码库 > Log4Net配置 转
Log4Net配置 转
http://www.cnblogs.com/qingyi/archive/2010/01/14/1647915.html
用一些东西老是忘记,先记在这啦。。
<!--log4net相关说明
一.配置
1.关联配置文件 在AssemblyInfo.cs中配置
添加[assembly:log4net.Config.DOMConfigurator(ConfigFile="log4net.config", ConfigFileExtension="ext",Watch=true/false)]
说明:
ConfigFile-==指的是log4Net的配置文件的路径,相对应用程序的根路径
ext==如果我们对被编译程序的程序集使用了不同的文件扩展名,那么我们需要定义这个属性,缺省的,程序集的配置文件扩展名为”config”。
Watch (Boolean属性): log4net框架用这个属性来确定是否需要在运行时监视文件的改变。如果这个属性为true,
那么FileSystemWatcher将会被用来监视文件的改变,重命名,删除等事件。
注:其中:ConfigFile和ConfigFileExtension属性不能同时使用,ConfigFile指出了配置文件的名字,例如,ConfigFile=”Config.txt” ConfigFileExtension=”txt”,则配置文件就应该是”test.exe.txt” ;
log4net.config 文件介绍-->
<log4net> <!--框架在配置文件里要查找的唯一标识是<log4net>标签 -->
<root> <!--根日志定义-->
<level value="http://www.mamicode.com/WARN" /> <!--
定义级别 缺省为DEBUG (值从高到低可为:OFF--拒绝所有 FATAL ERROR WARN INFO DEBUG ALL--允许所有)
当你调用相应的日志方法时,框架会检查相应的Boolean属性,以决定该方法能不能执行。
-->
<appender-ref ref="LogFileAppender" /> <!--定义输出介质-->
<appender-ref ref="ConsoleAppender" />
</root>
<logger name="testApp.Logging" additivity="false">
<!--
预定义了一个具体日志对象的设置,然后通过调用LogManager.GetLogger(“testAPP.Logging”)
additivity 是否继承root
-->
<level value="http://www.mamicode.com/DEBUG"/>
</logger>
<appender name="LogFileAppender" type="log4net.Appender.FileAppender" > <!--type:定义输出介质为文本文件-->
<param name="File" value="http://www.mamicode.com/log-file.txt" /> <!--File文件路径 相对于根路径-->
<param name="AppendToFile" value="http://www.mamicode.com/true" /> <!--追加到文件还是覆盖文件-->
<layout type="log4net.Layout.PatternLayout"> <!--向用户显示最后经过格式化的输出信息-->
<param name="Header" value="http://www.mamicode.com/[Header]"/> <!--头-->
<param name="Footer" value="http://www.mamicode.com/[Footer]"/> <!--脚注-->
<param name="ConversionPattern" value="http://www.mamicode.com/%d [%t] %-5p %c [%x] - %m%n" />
<!--
%m(message):输出的日志消息,如ILog.Debug(…)输出的一条消息
%n(new line):换行
%d(datetime):输出当前语句运行的时刻
%r(run time):输出程序从运行到执行到当前语句时消耗的毫秒数
%t(thread id):当前语句所在的线程ID
%p(priority): 日志的当前优先级别,即DEBUG、INFO、WARN…等
%c(class):当前日志对象的名称,例如:
%L:输出语句所在的行号
%F:输出语句所在的文件名
%-数字:表示该项的最小长度,如果不够,则用空格填充
-->
</layout>
<filter type="log4net.Filter.LevelRangeFilter"> <!--应用到Appender对象的过滤器-->
<param name="LevelMin" value="http://www.mamicode.com/DEBUG" />
<param name="LevelMax" value="http://www.mamicode.com/WARN" />
</filter>
</appender>
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender" >
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="http://www.mamicode.com/%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>
</log4net>
<!--2.在web.config中配置
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net的dll名" />
</configSections>
创建或获取日志对象
Log4net.ILog log = Log4net.LogManager.GetLogger("MyLogger");
log.Info("message");
-->