Log4net配置

< DOCTYPE html PUBLIC -WCDTD XHTML StrictEN httpwwwworgTRxhtmlDTDxhtml-strictdtd>

几乎所有的项目都需要以 log 的形式保留一些系统纪录,实现这类功能的API又以Log4J最为出名。对于.NET平台上,值得庆幸的是,Apache组织已经把Log4J迁移到.NET平台上,从而诞生了:og4j的姐妹-Log4net.下面的文字仅仅作为快速入门的参考,更详细的应用可以访问apache的站点。

1. 首先你应该下载log4net.dll并引入到你的项目References中.

2. 需要修改你的global.asa.cs. 配置application对象启动的时候加载log4net配置. 这一步是不可以缺少的.

代码

protected void Application_Start(Object sender, EventArgs e)   
  
   log4net.Config.XmlConfigurator.Configure();   

对于Application程式,则在main入口点加载配置。

3. Log4net 的配置应设置于web.config或App.config中,以Web.Config为例在根节点 configuration 中加入如下section:

代码

<configSections>  
   <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />  
</configSections>  

4. 该config section 声明了名为 log4net的一个Section,其必须位于web.config根节点 configuration 下。
以下是一个sample:

代码 <log4net debug="false">  
     <appender name="LogFileAppender" type="log4net.Appender.FileAppender" >  
         <param name="File" value="XxxxApplication.log.txt" />  
         <param name="datePattern" value="MM-dd HH:mm" />  
         <param name="AppendToFile" value="true" />  
         <layout type="log4net.Layout.PatternLayout">  
             <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />  
         </layout>  
     </appender>  
     <appender name="HttpTraceAppender" type="log4net.Appender.ASPNetTraceAppender" >  
         <layout type="log4net.Layout.PatternLayout">  
             <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />  
         </layout>  
     </appender>  
     <appender name="EventLogAppender" type="log4net.Appender.EventLogAppender" >  
         <layout type="log4net.Layout.PatternLayout">  
             <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />  
         </layout>  
     </appender>  
     <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">  
         <param name="File" value="_LogData\Log.txt" />  
         <param name="AppendToFile" value="true" />  
         <param name="MaxSizeRollBackups" value="10" />  
         <param name="MaximumFileSize" value="5MB" />  
         <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>  
     <root>  
         <level value="DEBUG" />  
         <appender-ref ref="LogFileAppender" />  
     </root>  
</log4net>  

5. 上面的配置定义了多个appender. 简单来说, 每一个 appender 都是一个输出管道。

6. root节点指定了选用的 appender. 本例选用了LogFileAppender. (文本文件输出).

在Appender定义中定义了输出的格式. 和目标文本文件所在位置. (起始位置是应用程序根目录. (web.config所在目录).

7. 到目前位置就配置好了log4net. 可以在我们的应用中直接使用了.

8. 以下说明应用方法:
要输出日志, 必须首先得到带有一个别名的logger. 使用以下命令:

代码

log4net.ILog Logger logger = log4net.LogManager.GetLogger(typeof(XXXX));   

之后调用

代码

logger.Info(string message);   
logger.Error(string message);   
logger.Debug(string message);   
...   


即可输出日志.

posted @ 2007-08-10 11:37  netcorner  阅读(206)  评论(0编辑  收藏  举报