http://www.cnblogs.com/zjfree/archive/2011/02/22/1961586.html
在C# winForm程序中添加log4net
1. 引用 log4net.dll
2. 添加 app.config 内容如下:
<? xml version = "1.0" encoding = "utf-8" ?>
< configuration >
< log4net >
< appender name = "RollingLogFileAppender" type = "log4net.Appender.RollingFileAppender" >
< param name = "File" value = "Log\Log.txt" />
< param name = "AppendToFile" value = "true" />
< param name = "MaxSizeRollBackups" value = "100" />
< param name = "MaximumFileSize" value = "2MB" />
< param name = "RollingStyle" value = "Size" />
< param name = "StaticLogFileName" value = "true" />
< layout type = "log4net.Layout.PatternLayout" >
< param name = "ConversionPattern" value = "%-5p %d [%c] %m%n" />
</ layout >
</ appender >
< root >
< level value = "all" />
< appender-ref ref = "RollingLogFileAppender" />
</ root >
</ log4net >
</ configuration >
|
具体设置说明可在网上找。
3. 在 Properties/AssemblyInfo.cs 添加 [assembly: log4net.Config.DOMConfigurator(Watch=true)]
4. 在代码中添加日志
定义LOG private static log4net.ILog LOG = log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
写入日志 LOG.Info("窗体打开");
5. 如果要记录所有未处理异常,修改 Program.cs 如下
using System;
using System.Collections.Generic;
using System.Windows.Forms;
using System.Reflection;
namespace ExceptionTest
{
static class Program
{
static log4net.ILog LOG = log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);
Application.ThreadException += new System.Threading.ThreadExceptionEventHandler(Application_ThreadException);
AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault( false );
Application.Run( new Form1());
}
static void Application_ThreadException( object sender, System.Threading.ThreadExceptionEventArgs e)
{
LOG.Error(e.Exception);
MessageBox.Show(e.Exception.Message, "线程异常" , MessageBoxButtons.OK, MessageBoxIcon.Error);
Application.Exit();
}
static void CurrentDomain_UnhandledException( object sender, UnhandledExceptionEventArgs e)
{
Exception ex = e.ExceptionObject as Exception;
LOG.Error(ex);
MessageBox.Show(ex.Message, "应用程序异常" , MessageBoxButtons.OK, MessageBoxIcon.Error);
Application.Exit();
}
}
}
|
在Asp.net 网站中添加log4net
1. 引用 log4net.dll
2. 配置Web.config 如下
<? xml version = "1.0" ?>
< configuration >
< configSections >
< section name = "log4net" type = "log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</ configSections >
< appSettings />
< connectionStrings />
< system.web >
< compilation debug = "true" />
< authentication mode = "Windows" />
</ system.web >
< log4net >
< appender name = "RollingLogFileAppender" type = "log4net.Appender.RollingFileAppender" >
< param name = "File" value = "D:\test\Log.txt" />
< param name = "AppendToFile" value = "true" />
< param name = "MaxSizeRollBackups" value = "100" />
< param name = "MaximumFileSize" value = "2MB" />
< param name = "RollingStyle" value = "Size" />
< param name = "StaticLogFileName" value = "true" />
< layout type = "log4net.Layout.PatternLayout" >
< param name = "ConversionPattern" value = "%-5p %d [%c] %m%n" />
</ layout >
</ appender >
< root >
< level value = "all" />
< appender-ref ref = "RollingLogFileAppender" />
</ root >
</ log4net >
</ configuration >
|
3. 添加 Global.asax 内容如下:
private static log4net.ILog LOG = log4net.LogManager.GetLogger( "Log4net 测试网站" );
void Application_Start( object sender, EventArgs e)
{
log4net.Config.DOMConfigurator.Configure();
LOG.Info( "网站启动" );
}
void Application_Error( object sender, EventArgs e)
{
Exception ex = HttpContext.Current.Server.GetLastError();
LOG.Error( "未处理异常" , ex);
}
|
将站点的所有未处理异常记录到log4net中。
4. 如何使用
定义LOG private static log4net.ILog LOG = log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
写入日志 LOG.Info("网站启动");
示例代码下载
下载:http://files.cnblogs.com/zjfree/ErrorLog.rar
环境:WIN2003 + VS2005 + C#
分享到:
相关推荐
log4net是.Net下一个非常优秀的开源日志记录组件。log4net记录日志的功能非常强大。它可以将日志分不同的等级,以不同的格式,输出到不同的媒介。本文主要是介绍如何在Visual Studio2008中使用log4net快速创建系统...
用户可以从http://logging.apache.org/log4net/下载log4net的源代码。解压软件包后,在解压的src目录下将log4net.sln载入Visual Studio .NET,编译后可以得到log4net.dll。用户要在自己的程序里加入日志功能,只需将...
log4net 日志类封装 log4net 日志类封装
配置Log4net.config <log4net OverdueDays="10"> 可以删除指定多少天数前的日志文件,不配默认7天,每24小时自动清一次
Log4Net使用指南 声明:本文内容主要译自Nauman Leghari的Using log4net,亦加入了个人的一点心得(节3.1.4)。 请在这里下载示例代码 1 简介 1.1 Log4net的优点: 几乎所有的大型应用都会有自己的用于跟踪调试...
log4net库是一个工具,可帮助程序员将日志语句输出到各种输出目标。log4net是优秀的Apache log4j™框架到Microsoft®.NET运行时的移植。我们利用.NET运行时中的新功能,使该框架在本质上与原始log4j相似。 log4net是...
net core5 Log4Net 全局注册,日志使用
log4net 从1.0到4.5
傻瓜版 log4net 日志记录,只需要添加引用即可记录日志,不需要做任何的配置,真正的一键应用。 使用方法: 1、将 CustomFrame.Logging 工程添加到项目,然后在需要的地方添加项目的引用 2、调用: LoggerFactory....
log4net库是Apache log4j框架在Microsoft .NET平台的实现,是一个帮助程序员将日志信息输出到各种目标(控制台、文件、数据库等)的工具。 log4net是Apache软件基金会Apache Logging Services工程的一部分。Apache...
net6 控制台+ log4net+写数据库+自定义字段
C# 使用Log4Net记录日志
资源包含log4net配置过程详细图解文档、Demo、插件,其中log4net配置过程详细图解文档包含插件简介、下载、引入VS2010、配置、使用、总结
http://logging.apache.org/log4net/download_log4net.cgi 2.建立c# winform项目,名称为logTest; 3.添加配置文件log.config; 4.添加按钮代码; private void button1_Click(object sender, EventArgs e) { ...
wpf 使用log4net ,可以每天生成一个日志文件。自己网上找了半天,没合适的,写了一个。
使用Log4net发送日志邮件实例
Log4Net自带配置文件实例讲解
Log4net是.net非常好的日志管理工具
log4net.dll是著名的Apache软件为.NET Framework 2框架准备的支持库,Log4net日志记录组件。
log4net是一个功能著名的开源日志记录组件。利用log4net可以方便地将日志信息记录到文件、控制台、Windows事件日志和数据库(包括MS SQL Server, Access, Oracle9i,Oracle8i,DB2,SQLite)中。并且我们还可以记载控制...