您的位置:首页 > 编程语言 > ASP

ASP.NET使用log4Net日志组件教程(每天产生一个日志及日志按大小切割)

2010-10-26 16:21 1211 查看
对于一个大型网站与系统来说,日志是必备的工具,通过日志你可以非常清楚程序的运行情况,及时得到反馈来解决问题,下面介绍ASP.NET版本的log4Net日志组件是个非常强大的工具,最新版本for .net2.0 1.2.10.0

本人搞了一天,终于知道搞清楚怎样使用了,简单记录一下。

以下介绍的方法是log4net使用单独的配置文件的。

开始行动:

第一步:在项目引用log4net.dll文件

第二步:

在Web.config文件中加入一句代码,位置如下:

<configuration>

<configSections>

<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />

</configSections>

</configuration>

第三步:

建立一个单独的配置文件,文件名为:log4net.config

(这个配置文件会在App_Data目录下按日期每天产生一个日志文件,如:Logs_20090703.txt)

log4net.config配置文件内容:



log4net.config Code [http://www.xueit.com]

<?
xml version="1.0" encoding="utf-8"
?>

<
log4net
>

<!--
OFF, FATAL, ERROR, WARN, INFO, DEBUG, ALL
-->

<!--
Set root logger level to ERROR and its appenders
-->

<
root
>

<
level
value
="ALL"
/>

<
appender-ref
ref
="SysAppender"
/>

</
root
>

<!--
Print only messages of level DEBUG or above in the packages
-->

<
logger
name
="WebLogger"
>

<
level
value
="DEBUG"
/>

</
logger
>

<
appender
name
="SysAppender"
type
="log4net.Appender.RollingFileAppender,log4net"

>

<
param
name
="File"
value
="App_Data/"

/>

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

</
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
>


第四步:(这步很关键)

在文件AssemblyInfo.cs加入一句代码,AssemblyInfo.cs的路径所在Properties目录下

加入的代码如下:

// 日志组件配置

[assembly: log4net.Config.DOMConfigurator(ConfigFile = "log4net.config", Watch = true)]

第五步
:开始使用log4net的.cs代码

先引入:

using log4net;

代码:

object o = ConfigurationSettings.GetConfig("log4net");

log4net.Config.DOMConfigurator.Configure(o as System.Xml.XmlElement);

log4net.ILog logger = log4net.LogManager.GetLogger("WebLogger");

logger.Debug("调试");

logger.Error("这是一个错误日志");

logger.Fatal("这是一个致命的错误日志");

logger.Warn("这是一条警告日志");

logger.Info("这是一条普通信息");

就这么简单完成了。

下面说下配置文件按大小自动切割多个文件的方法。

log4net.config单独配置文件(按大小)的内容如下:



log4net.config Code [http://www.xueit.com]

<?
xml version="1.0" encoding="utf-8"
?>

<
log4net
>

<!--
OFF, FATAL, ERROR, WARN, INFO, DEBUG, ALL
-->

<!--
Set root logger level to ERROR and its appenders
-->

<
root
>

<
level
value
="ALL"
/>

<
appender-ref
ref
="SysAppender"
/>

</
root
>

<!--
Print only messages of level DEBUG or above in the packages
-->

<
logger
name
="WebLogger"
>

<
level
value
="DEBUG"
/>

</
logger
>

<
appender
name
="SysAppender"
type
="log4net.Appender.RollingFileAppender"
>

<
param
name
="File"
value
="App_Data/Logs.txt"
/>

<
param
name
="AppendToFile"
value
="true"
/>

<
param
name
="MaxSizeRollBackups"
value
="12"
/>

<!--
切割最多文件数
-->

<
param
name
="MaximumFileSize"
value
="500KB"
/>

<!--
每个文件的大小
-->

<
param
name
="RollingStyle"
value
="Size"
/>

<
param
name
="StaticLogFileName"
value
="true"
/>

<
layout
type
="log4net.Layout.PatternLayout"
>

<
param
name
="ConversionPattern"
value
="%d [%t] %-5p %c [%x] - %m%n"
/>

</
layout
>

</
appender
>

</
log4net
>


下面看下我服务器上使用的效果图:



log4Net产生日志效果图

作者
:dodo

出处
http://www.xueit.com/html/2009-12-18/21-1907360304171.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐