本人搞了一天,终于知道搞清楚怎样使用了,简单记录一下。
以下介绍的方法是log4net使用单独的配置文件的。
开始行动:
第一步:在项目引用log4net.dll文件
第二步:
在Web.config文件中加入一句代码,位置如下:
<configuration>
<configSections>
<section
name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"
/>
</configSections>
</configuration>
第三步:
建立一个单独的配置文件,文件名为:log4net.config
(这个配置文件会在App_Data目录下按日期每天产生一个日志文件,如:Logs_20090703.txt)
log4net.config配置文件内容:
log4net.config Code [http://www.xueit.com]
<?xml version="1.0"
encoding="utf-8"?><log4net><!--
OFF, FATAL, ERROR, WARN, INFO, DEBUG, ALL
--><!-- Set root logger level to
ERROR and its appenders
--><root><level
value="ALL"/><appender-ref
ref="SysAppender"/></root><!--
Print only messages of level DEBUG or above in the packages
--><logger
name="WebLogger"><level
value="DEBUG"/></logger><appender
name="SysAppender"
type="log4net.Appender.RollingFileAppender,log4net"><param
name="File"
value="App_Data/"/><param
name="AppendToFile"
value="true"/><param
name="RollingStyle"
value="Date"/><param
name="DatePattern"
value=""Logs_"yyyyMMdd".txt""/><param
name="StaticLogFileName"
value="false"/><layout
type="log4net.Layout.PatternLayout,log4net"><param
name="ConversionPattern"
value="%d [%t] %-5p %c -
%m%n"/><param
name="Header"
value=" ----------------------header-------------------------- "/><param
name="Footer"
value=" ----------------------footer-------------------------- "/></layout></appender><appender
name="consoleApp"
type="log4net.Appender.ConsoleAppender,log4net"><layout
type="log4net.Layout.PatternLayout,log4net"><param
name="ConversionPattern"
value="%d [%t] %-5p %c -
%m%n"/></layout></appender></log4net>
第四步:(这步很关键)
在文件AssemblyInfo.cs加入一句代码,AssemblyInfo.cs的路径所在Properties目录下
加入的代码如下:
// 日志组件配置
[assembly: log4net.Config.DOMConfigurator(ConfigFile =
"log4net.config", Watch = true)]
第五步:开始使用log4net的.cs代码
先引入:
using log4net;
代码:
object o =
ConfigurationSettings.GetConfig("log4net");
log4net.Config.DOMConfigurator.Configure(o
as System.Xml.XmlElement);
log4net.ILog logger =
log4net.LogManager.GetLogger("WebLogger");
logger.Debug("调试");
logger.Error("这是一个错误日志");
logger.Fatal("这是一个致命的错误日志");
logger.Warn("这是一条警告日志");
logger.Info("这是一条普通信息");
就这么简单完成了。
下面说下配置文件按大小自动切割多个文件的方法。
log4net.config单独配置文件(按大小)的内容如下:
log4net.config Code [http://www.xueit.com]
<?xml version="1.0"
encoding="utf-8"?><log4net><!--
OFF, FATAL, ERROR, WARN, INFO, DEBUG, ALL
--><!-- Set root logger level to
ERROR and its appenders
--><root><level
value="ALL"/><appender-ref
ref="SysAppender"/></root><!--
Print only messages of level DEBUG or above in the packages
--><logger
name="WebLogger"><level
value="DEBUG"/></logger><appender
name="SysAppender"
type="log4net.Appender.RollingFileAppender"><param
name="File"
value="App_DataLogs.txt"/><param
name="AppendToFile"
value="true"/><param
name="MaxSizeRollBackups"
value="12"/> <!--
切割最多文件数 --><param
name="MaximumFileSize"
value="500KB"/> <!--
每个文件的大小 --><param
name="RollingStyle"
value="Size"/><param
name="StaticLogFileName"
value="true"/><layout
type="log4net.Layout.PatternLayout"><param
name="ConversionPattern"
value="%d [%t] %-5p %c [%x] -
%m%n"/></layout></appender></log4net>
下面看下我服务器上使用的效果图:
log4Net产生日志效果图
作者:dodo
原文: http://www.xueit.com/html/2009-12-18/21-1907360304171.html
本文版权归作者和学IT网共有,欢迎转载,但未经作者同意必须保留此段声明,并且保留原文链接。否则保留追究法律责任的权利。