在.NET程序中使用log4net
作者:佚名 文章来源:网络转载 更新时间
:2007-11-25 13:34:56
3.1. 在自己的项目中添加对 log4net.dll 的引用。
3.2. 设置配置文件App.config
示例:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<!--如果不用App.config作配置文件,则configSections节不是必须的。-->
<configSections>
<!--“type”属性的完整格式为:配置节处理器类名,程序集名称,Version=程序集版本号,Culture=区域信息,PublicKeyToken=公钥-->
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
</configSections>
<log4net>
<!--日志记录器logger,可以有多个-->
<logger name="AppLogger">
<level value="INFO" />
<appender-ref ref="LogFileAppender" />
<appender-ref ref="ConsoleAppender" />
</logger>
<logger name="Form1">
<level value="DEBUG" />
<appender-ref ref="LogFileAppender" />
</logger>
<!--所有logger的基,root的设置在所有logger中都起作用。
当在root和logger中重复设定相同的appender时,你会发现同一日志信息将被记录两次。-->
<!--<root>
<level value="WARN" />
<appender-ref ref="LogFileAppender" />
<appender-ref ref="ConsoleAppender" />
</root>-->
<!--一个appender可以由多个logger共用,当然一个logger可以指定多个appender。-->
<appender name="LogFileAppender" type="log4net.Appender.FileAppender">
<param name="File" value="App.log" />
<param name="AppendToFile" 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] %X{auth} - %m%n" />
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="DEBUG" />
<param name="LevelMax" value="FATAL" />
</filter>
</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>
</log4net>
</configuration>
3.3 代码里实现
private void btnLog_Click(object sender, System.EventArgs e)
{
log4net.ILog log = log4net.LogManager.GetLogger("AppLogger");
log.Debug("debug");
log.Info("info");
log.Warn("warn");
log.Error("error");
MessageBox.Show("生成日志成功!");
}
【相关文章:】
没有相关文章
【发表评论】【打印此文】【关闭窗口】【点击数: 】
3.2. 设置配置文件App.config
示例:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<!--如果不用App.config作配置文件,则configSections节不是必须的。-->
<configSections>
<!--“type”属性的完整格式为:配置节处理器类名,程序集名称,Version=程序集版本号,Culture=区域信息,PublicKeyToken=公钥-->
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
</configSections>
<log4net>
<!--日志记录器logger,可以有多个-->
<logger name="AppLogger">
<level value="INFO" />
<appender-ref ref="LogFileAppender" />
<appender-ref ref="ConsoleAppender" />
</logger>
<logger name="Form1">
<level value="DEBUG" />
<appender-ref ref="LogFileAppender" />
</logger>
<!--所有logger的基,root的设置在所有logger中都起作用。
当在root和logger中重复设定相同的appender时,你会发现同一日志信息将被记录两次。-->
<!--<root>
<level value="WARN" />
<appender-ref ref="LogFileAppender" />
<appender-ref ref="ConsoleAppender" />
</root>-->
<!--一个appender可以由多个logger共用,当然一个logger可以指定多个appender。-->
<appender name="LogFileAppender" type="log4net.Appender.FileAppender">
<param name="File" value="App.log" />
<param name="AppendToFile" 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] %X{auth} - %m%n" />
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="DEBUG" />
<param name="LevelMax" value="FATAL" />
</filter>
</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>
</log4net>
</configuration>
3.3 代码里实现
private void btnLog_Click(object sender, System.EventArgs e)
{
log4net.ILog log = log4net.LogManager.GetLogger("AppLogger");
log.Debug("debug");
log.Info("info");
log.Warn("warn");
log.Error("error");
MessageBox.Show("生成日志成功!");
}
【相关文章:】
没有相关文章
【发表评论】【打印此文】【关闭窗口】【点击数: 】
★好玩的休闲小游戏★
网友评论:
数据载入中,请稍后……
