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

王朝c#·作者佚名  2006-01-09
宽屏版  字体: |||超大  

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);

}

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有