posts - 0,  comments - 20,  trackbacks - 0

在C#工程中经常使用log4net.dll来控制log的输出,这种处理对于我们的项目调试特别是
大型的商业项目的调试带来了很大的好处。近期在做项目的时候使用到了log4net
现谈一下自己的使用心得。
对于.net开发尤其是asp.net的开发来说,使用log4net是一个很明智的选择。
log4net主要包括2个文件:log4net.dll 和log4net.xml。可以从.net framework
取得相应的文件。
一个普通应用或者一个asp.net怎样建立关联呢?
首先需要配置相关的配置文件App.config或Web.config,顾名思义普通应用的配置文件
为App.config,asp.net的配置文件为Web.config。有关log的配置如下:
<configuration>
   <configSections>
       <!-- log4net的定义 -->
         <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
   </configSections>

   <log4net>
   <!-- Console部分log输出格式的设定 -->
         <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
             <layout type="log4net.Layout.PatternLayout">
                 <conversionPattern value="%date [%thread] %-5level %logger %ndc - %message%newline" />
             </layout>
         </appender>

   <!-- 日志文件部分log输出格式的设定 -->
         <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
             <file value="具体的log文件路径名" />
             <appendToFile value="true" />
             <maxSizeRollBackups value="10" />
             <maximumFileSize value="1MB" />
             <rollingStyle value="Size" />
             <staticLogFileName value="true" />
             <layout type="log4net.Layout.PatternLayout">
                 <header value="[Header] " />
                 <footer value="[Footer] " />
                 <ConversionPattern value="%date [%thread] %-5level %logger [%ndc] - %message%newline" />
             </layout>
         </appender>
  
   <!-- Setup the root category, add the appenders and set the default level -->
         <root>
             <level value="ALL" />
             <appender-ref ref="ConsoleAppender" />
             <appender-ref ref="RollingLogFileAppender" />
         </root>
     </log4net>
</configuration>

其次在项目的AssemblyInfo.cs里面加上[assembly: log4net.Config.XmlConfigurator()],这样项目工程和log4net就
建立了关联。
备注:[assembly: log4net.Config.DOMConfigurator()]这句话的意思是log4net系统会自动寻找配置文件App.config或Web.config
从而获得并加载其中的配置信息。如果想log4net随时监视配置文件以便重新加载的话就要这样写:
[assembly:log4net.Config.DOMConfigurator(ConfigFile="filename",ConfigFileExtension="log4net",Watch=true)]

最后就是源文件中的使用了。
添加log4net的引用using log4net;
同时在相关的类中定义log变量如
   protected static readonly log4net.ILog mLog =
    LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
log的具体操作,如mLog.Error("this is a test log message!");

posted on 2008-09-05 10:59 Documents 阅读(479) 评论(0)  编辑  收藏 所属分类: log4net

只有注册用户登录后才能发表评论。


网站导航:
 
<2024年12月>
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234

留言簿

文章分类

文章档案

J2EE

搜索

  •  

最新评论