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] <%x{auth}> - %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);
}
}
}