Log4net 一些心得和Ibastis.net日志配置
2010-12-10 10:03
429 查看
1.log4net使用
a.现在的版本是1。2。10。。好象停止更新了 下载
b.引用log4net.dll
c.添加配置文件
配置文件的使用注意:
1。如果程序只是在一个程序域,而且只有一个单一的程序集,那只要在web.config或者app.config。如下:
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
<log4net>
<root>
<level value="ALL" />
<!--<appender-ref ref="LogFileAppender" />-->
</root>
<logger name="HR.BusinessComponent" additivity="false">
<level value="DEBUG" />
</logger>
<logger name="HR.DataAccess" additivity="false">
<appender-ref ref="DaoLogFileAppender" />
<level value="DEBUG" />
</logger>
<logger name="HR.WebApp" additivity="false">
<level value="DEBUG" />
</logger>
<appender name="LogFileAppender" type="log4net.Appender.FileAppender" >
<param name="File" value="log-file.txt" />
<param name="AppendToFile" value="true" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] <%X{auth}>%n -输出消息:--%m%n" />
</layout>
</appender>
<appender name="DaoLogFileAppender" type="log4net.Appender.FileAppender" >
<param name="File" value="dao_log.txt" />
<param name="AppendToFile" value="true" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] <%X{auth}>%n -输出消息:--%m%n" />
</layout>
</appender>
</log4net>
一种是:
在Assembly.cs中添加或者是在当前使用的类上
[assembly: log4net.Config.XmlConfigurator(Watch = true)]
一种是然后在Global.cs中添加
log4net.config.XmlConfig.ConfigWatch()这个方法
2.但是一般我们都是分层的,而且也希望日志是可以替换的。但是这样会导致log4net只能共用宿主的配置文件比如web.config和app.config
全导致配置文件很复杂。
我是这样处理的首先为他添加一个叫log4net的单独的配置文件
和上面基本一对敌。
然后在初始化的时候,是这样
Uri uri = new Uri(Assembly.GetExecutingAssembly().CodeBase);
string file = Path.Combine(Path.GetDirectoryName(uri.LocalPath), "log4net.config");
log4net.Config.XmlConfigurator.ConfigureAndWatch(new FileInfo(file));
这样总是可以拿到本程序集下的log4.net文件,,当然你要把log4net.config做为输出文件去
a.现在的版本是1。2。10。。好象停止更新了 下载
b.引用log4net.dll
c.添加配置文件
配置文件的使用注意:
1。如果程序只是在一个程序域,而且只有一个单一的程序集,那只要在web.config或者app.config。如下:
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
<log4net>
<root>
<level value="ALL" />
<!--<appender-ref ref="LogFileAppender" />-->
</root>
<logger name="HR.BusinessComponent" additivity="false">
<level value="DEBUG" />
</logger>
<logger name="HR.DataAccess" additivity="false">
<appender-ref ref="DaoLogFileAppender" />
<level value="DEBUG" />
</logger>
<logger name="HR.WebApp" additivity="false">
<level value="DEBUG" />
</logger>
<appender name="LogFileAppender" type="log4net.Appender.FileAppender" >
<param name="File" value="log-file.txt" />
<param name="AppendToFile" value="true" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] <%X{auth}>%n -输出消息:--%m%n" />
</layout>
</appender>
<appender name="DaoLogFileAppender" type="log4net.Appender.FileAppender" >
<param name="File" value="dao_log.txt" />
<param name="AppendToFile" value="true" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] <%X{auth}>%n -输出消息:--%m%n" />
</layout>
</appender>
</log4net>
一种是:
在Assembly.cs中添加或者是在当前使用的类上
[assembly: log4net.Config.XmlConfigurator(Watch = true)]
一种是然后在Global.cs中添加
log4net.config.XmlConfig.ConfigWatch()这个方法
2.但是一般我们都是分层的,而且也希望日志是可以替换的。但是这样会导致log4net只能共用宿主的配置文件比如web.config和app.config
全导致配置文件很复杂。
我是这样处理的首先为他添加一个叫log4net的单独的配置文件
和上面基本一对敌。
然后在初始化的时候,是这样
Uri uri = new Uri(Assembly.GetExecutingAssembly().CodeBase);
string file = Path.Combine(Path.GetDirectoryName(uri.LocalPath), "log4net.config");
log4net.Config.XmlConfigurator.ConfigureAndWatch(new FileInfo(file));
这样总是可以拿到本程序集下的log4.net文件,,当然你要把log4net.config做为输出文件去
相关文章推荐
- ASP.NET/MVC 配置log4net启用写错误日志功能
- ASP.NET/MVC 配置log4net启用写错误日志功能
- asp.net MVC日志插件Log4Net学习笔记二:保存日志到sqlserver的配置
- ASP.NET/MVC 配置log4net启用写错误日志功能
- ASP.NET 配置log4net启用写错误日志功能
- ASP.NET 配置log4net启用写错误日志功能
- tomcat5.5.9+sql2000数据库连接池配置的一些心得体会
- 如何配置和使用log4net日志(VS2008+SQL2008环境下)
- asp.net MVC日志插件Log4Net学习笔记一:保存日志到本地
- 在ASP.NET MVC中使用Log4Net进行多种HttpCode日志的记录
- ASP.NET主机资源控制的一些心得
- Log4Net 屏蔽第三方库的日志消息、以及 Oracle 企业管理器配置
- 用Log4Net在ASP.net中建立应用程序日志
- ASP.NET项目添加Log4Net后,发布后无法写日志
- c# 文件日志处理 需要log4net配置
- [C#]log4net写SQLServer数据库日志的配置方法
- 如何配置和使用log4net日志(VS2008+SQL2008环境下)
- .net简单使用Log4net的方法(多个日志配置文件)
- 解决log4net独占日志文件的问题以及 log4net的各种输出配置(Appender)