在.Net程序中使用log4net记录日志(示例)-转

http://dev.csdn.net/develop/article/59/59774.shtm
 

log4j是java开发人员所熟悉,他提供了强大的日志记录功能,log4net是为.Net记录日志开发的.使用示例如下(C#):
1、app.config文件
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
 <appSettings>
  <add key="log4net-config-file" value="log4net.config"/>
 </appSettings> 
</configuration>
2、log4net.config文件
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<!-- This section contains the log4net configuration settings -->
 <log4net>
  <!-- Define some output appenders -->
  <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
   <param name="File" value="Log\\LQSS-SS-log.txt" />
   <param name="AppendToFile" value="true" />
   <param name="MaxSizeRollBackups" value="10" />
   <param name="MaximumFileSize" value="100KB" />
   <param name="RollingStyle" value="Size" />
   <param name="StaticLogFileName" value="true" />
   <layout type="log4net.Layout.PatternLayout">
    <param name="Header" value="[Header]\r\n" />
    <param name="Footer" value="[Footer]\r\n" />
    <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
   </layout>
  </appender>  
  <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
   <layout type="log4net.Layout.PatternLayout">
    <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] &lt;%X{auth}&gt; - %m%n" />
   </layout>
  </appender>
  <!-- Setup the root category, add the appenders and set the default level -->
  <root>
   <level value="INFO" />
   <appender-ref ref="RollingLogFileAppender" />
  </root>
  <root>
   <level value="DEBUG" />
   <appender-ref ref="ConsoleAppender" />
  </root>
 </log4net>
</configuration>
3、代码文件
using log4net;
using log4net.Config;
class Program
 {
  private static ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
  
  /// <summary>
  /// 应用程序的主入口点。
  /// </summary>
  [STAThread]
  static void Main(string[] args)
  {
   try
   {
    DOMConfigurator.Configure(
                                    new FileInfo(ConfigurationSettings.AppSettings["log4net-config-file"]));    
    logger.Info("Start application...");
    Console.Writeline(“请按 <enter> 键退出...");
    System.Console.ReadLine();
   }
   catch (Exception e)
   {
    logger.Info (e);
   }
  }
 }


相关文章
posted @ 2007-07-18 17:36  jambol  阅读(241)  评论(0编辑  收藏  举报