Log4Net使用与配置
2014-05-29 10:17
274 查看
===C/S配置===
1.项目中引用log4net.dll
2.在项目的Properties下的AssemblyInfo.cs末尾添加
[assembly: log4net.Config.DOMConfigurator(Watch = true)]
3.在app.config中添加以下节内容
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
</configSections>
<log4net>
<root>
<level value="ALL" />
<appender-ref ref="SysAppender" />
</root>
<logger name="Test">
<level value="DEBUG" />
<appender-ref ref="SysAppender" />
</logger>
<!-- 配置模板节 由logger节调用name名称 -->
<appender name="rollingFile" type="log4net.Appender.RollingFileAppender,log4net" >
<param name="File" type="" value="e:\\log" /><!-- 日志文件路径 -->
<param name="AppendToFile" value="true" />
<!--<param name="MaxSizeRollBackups" value="12"/>--><!-- 切割最多文件数 -->
<!--<param name="MaximumFileSize" value="500KB"/>--><!-- 每个文件的大小 -->
<param name="RollingStyle" value="Date" />
<param name="DatePattern" value="yyyyMMdd" />
<param name="StaticLogFileName" value="false" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="[%d][%t] %c [%x]%newline%m%newline" /><!-- 日志行配置 -->
</layout>
</appender>
<appender name="SysAppender" type="log4net.Appender.RollingFileAppender,log4net" >
<param name="File" value="logs\" />
<param name="AppendToFile" value="true" />
<param name="RollingStyle" value="Date" />
<param name="DatePattern" value=""Logs_"yyyyMMdd".txt"" />
<param name="StaticLogFileName" value="false" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" />
</layout>
</appender>
<appender name="consoleApp" type="log4net.Appender.ConsoleAppender,log4net">
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" />
</layout>
</appender>
</log4net>
4.添加个调用类
class LogBLL
{
public static void debug(string message)
{
object o = ConfigurationSettings.GetConfig("log4net");
log4net.Config.DOMConfigurator.Configure(o as System.Xml.XmlElement);
log4net.ILog log = log4net.LogManager.GetLogger("WebLogger");
if (log.IsDebugEnabled)
{
log.Debug(message);
}
log = null;
}
public static void error(string message)
{
object o = ConfigurationSettings.GetConfig("log4net");
log4net.Config.DOMConfigurator.Configure(o as System.Xml.XmlElement);
log4net.ILog log = log4net.LogManager.GetLogger("WebLogger");
if (log.IsErrorEnabled)
{
log.Error(message);
}
log = null;
}
public static void fatal(string message)
{
object o = ConfigurationSettings.GetConfig("log4net");
log4net.Config.DOMConfigurator.Configure(o as System.Xml.XmlElement);
log4net.ILog log = log4net.LogManager.GetLogger("WebLogger");
if (log.IsFatalEnabled)
{
log.Fatal(message);
}
log = null;
}
public static void info(string message)
{
object o = ConfigurationSettings.GetConfig("log4net");
log4net.Config.DOMConfigurator.Configure(o as System.Xml.XmlElement);
log4net.ILog log = log4net.LogManager.GetLogger("WebLogger");
if (log.IsInfoEnabled)
{
log.Info(message);
}
log = null;
}
public static void warn(string message)
{
object o = ConfigurationSettings.GetConfig("log4net");
log4net.Config.DOMConfigurator.Configure(o as System.Xml.XmlElement);
log4net.ILog log = log4net.LogManager.GetLogger("WebLogger");
if (log.IsWarnEnabled)
{
log.Warn(message);
}
log = null;
}
}
===B/S配置===
1.同样是引用log4net.dll
2.在项目的Properties下的AssemblyInfo.cs末尾添加
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]//这个地方与c/s不同,指定一个特定配置文件
3.新建log4net.config并添加如下内容
<?xml version="1.0" encoding="utf-8"?>
<log4net>
<root>
<level value="ALL"/>
<appender-ref ref="SysAppender"/>
</root>
<logger name="WebLogger">
<level value="DEBUG"/>
<appender-ref ref="SysAppender" />
</logger>
<logger name="SocketLogger">
<level value="DEBUG"/>
<appender-ref ref="SysAppender" />
</logger>
<appender name="SysAppender" type="log4net.Appender.RollingFileAppender,log4net" >
<param name="File" value="log\" />
<param name="AppendToFile" value="true" />
<param name="RollingStyle" value="Date" />
<param name="DatePattern" value=""Logs_"yyyyMMdd".txt"" />
<param name="StaticLogFileName" value="false" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" />
<param name="Header" value=" ----------------------header-------------------------- " />
<param name="Footer" value=" ----------------------footer-------------------------- " />
</layout>
</log4net>
4.添加调用类
见C/S
5.在Web.config中configuration/configurations/sectionGroup添加
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
总结:C/S和B/S的配置关键是如何让log4net知道配置文件所在,已经配置文件的正确编写.
1.项目中引用log4net.dll
2.在项目的Properties下的AssemblyInfo.cs末尾添加
[assembly: log4net.Config.DOMConfigurator(Watch = true)]
3.在app.config中添加以下节内容
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
</configSections>
<log4net>
<root>
<level value="ALL" />
<appender-ref ref="SysAppender" />
</root>
<logger name="Test">
<level value="DEBUG" />
<appender-ref ref="SysAppender" />
</logger>
<!-- 配置模板节 由logger节调用name名称 -->
<appender name="rollingFile" type="log4net.Appender.RollingFileAppender,log4net" >
<param name="File" type="" value="e:\\log" /><!-- 日志文件路径 -->
<param name="AppendToFile" value="true" />
<!--<param name="MaxSizeRollBackups" value="12"/>--><!-- 切割最多文件数 -->
<!--<param name="MaximumFileSize" value="500KB"/>--><!-- 每个文件的大小 -->
<param name="RollingStyle" value="Date" />
<param name="DatePattern" value="yyyyMMdd" />
<param name="StaticLogFileName" value="false" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="[%d][%t] %c [%x]%newline%m%newline" /><!-- 日志行配置 -->
</layout>
</appender>
<appender name="SysAppender" type="log4net.Appender.RollingFileAppender,log4net" >
<param name="File" value="logs\" />
<param name="AppendToFile" value="true" />
<param name="RollingStyle" value="Date" />
<param name="DatePattern" value=""Logs_"yyyyMMdd".txt"" />
<param name="StaticLogFileName" value="false" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" />
</layout>
</appender>
<appender name="consoleApp" type="log4net.Appender.ConsoleAppender,log4net">
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" />
</layout>
</appender>
</log4net>
4.添加个调用类
class LogBLL
{
public static void debug(string message)
{
object o = ConfigurationSettings.GetConfig("log4net");
log4net.Config.DOMConfigurator.Configure(o as System.Xml.XmlElement);
log4net.ILog log = log4net.LogManager.GetLogger("WebLogger");
if (log.IsDebugEnabled)
{
log.Debug(message);
}
log = null;
}
public static void error(string message)
{
object o = ConfigurationSettings.GetConfig("log4net");
log4net.Config.DOMConfigurator.Configure(o as System.Xml.XmlElement);
log4net.ILog log = log4net.LogManager.GetLogger("WebLogger");
if (log.IsErrorEnabled)
{
log.Error(message);
}
log = null;
}
public static void fatal(string message)
{
object o = ConfigurationSettings.GetConfig("log4net");
log4net.Config.DOMConfigurator.Configure(o as System.Xml.XmlElement);
log4net.ILog log = log4net.LogManager.GetLogger("WebLogger");
if (log.IsFatalEnabled)
{
log.Fatal(message);
}
log = null;
}
public static void info(string message)
{
object o = ConfigurationSettings.GetConfig("log4net");
log4net.Config.DOMConfigurator.Configure(o as System.Xml.XmlElement);
log4net.ILog log = log4net.LogManager.GetLogger("WebLogger");
if (log.IsInfoEnabled)
{
log.Info(message);
}
log = null;
}
public static void warn(string message)
{
object o = ConfigurationSettings.GetConfig("log4net");
log4net.Config.DOMConfigurator.Configure(o as System.Xml.XmlElement);
log4net.ILog log = log4net.LogManager.GetLogger("WebLogger");
if (log.IsWarnEnabled)
{
log.Warn(message);
}
log = null;
}
}
===B/S配置===
1.同样是引用log4net.dll
2.在项目的Properties下的AssemblyInfo.cs末尾添加
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]//这个地方与c/s不同,指定一个特定配置文件
3.新建log4net.config并添加如下内容
<?xml version="1.0" encoding="utf-8"?>
<log4net>
<root>
<level value="ALL"/>
<appender-ref ref="SysAppender"/>
</root>
<logger name="WebLogger">
<level value="DEBUG"/>
<appender-ref ref="SysAppender" />
</logger>
<logger name="SocketLogger">
<level value="DEBUG"/>
<appender-ref ref="SysAppender" />
</logger>
<appender name="SysAppender" type="log4net.Appender.RollingFileAppender,log4net" >
<param name="File" value="log\" />
<param name="AppendToFile" value="true" />
<param name="RollingStyle" value="Date" />
<param name="DatePattern" value=""Logs_"yyyyMMdd".txt"" />
<param name="StaticLogFileName" value="false" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" />
<param name="Header" value=" ----------------------header-------------------------- " />
<param name="Footer" value=" ----------------------footer-------------------------- " />
</layout>
</log4net>
4.添加调用类
见C/S
5.在Web.config中configuration/configurations/sectionGroup添加
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
总结:C/S和B/S的配置关键是如何让log4net知道配置文件所在,已经配置文件的正确编写.
相关文章推荐
- Log4net的配置使用
- Log4net的配置使用
- log4net 简单使用与配置(版本 log4net 1.2.9 )
- WinForm中log4net配置说明和使用二
- WinForm中log4net配置说明和使用一
- log4net 1.2.9 的配置及使用
- Log4Net 配置和使用
- log4net 的配置和使用方法
- webconfig中配置log4net 数据访问及业务层使用
- 如何配置和使用log4net日志(VS2008+SQL2008环境下)
- log4net配置(web中使用log4net,把web.config放在单独的文件中)
- log4,log4net,Log4配置,log4net使用实例,.net中使用LOG4输出日志,LOG4纪录日志
- log4net的配置与使用(3)
- ExtAspNet应用技巧(八) - log4net配置与使用
- Log4Net最简单的使用配置_AX
- log4net的配置和使用
- log4net的配置与使用(2)
- Log4net 1.2.10.0 的配置使用
- Log4Net 配置和使用
- 如何配置和使用log4net日志(VS2008+SQL2008环境下)