1、log4netをダウンロード&プロジェクトに追加
1)log4net プロジェクト ホーム
http://logging.apache.org/log4net/
2)log4netをダウンロード
http://logging.apache.org/log4net/download.html
ダウンロードしたファイルを適当な場所に解凍する。
解凍先に「log4net.dll」ファイルがあることを確認できる。
3)log4netをプロジェクトに追加
・ログを出力したいプロジェクトの「参照設定」に右クリック
・「参照の追加」をクリック
・「参照」タブを選択
・「ファイルの場所」に「log4netの解凍先」を選択
・「log4net.dll」をクリック、「OK」ボタンをクリックしたら完了
2、log4net設定
log4netを利用する前に、ちょっとした設定が必要になる。
簡単に説明する
適当なファイル名で例えばlog4net.xmlというファイルを作成する。
log4net.xml
<?xml version="1.0" encoding="utf-8" ?>
<log4net>
<appender name="Console" type="log4net.Appender.ConsoleAppender">
<layout type="log4net.Layout.PatternLayout">
<!-- Pattern to output the caller's file name and line number -->
<conversionPattern value="%5level [%thread] (%file:%line) - %message%newline" />
</layout>
</appender>
<appender name="BusinessLog" type="log4net.Appender.RollingFileAppender">
<file value="c:/MyAppBiz" />
<appendToFile value="true" />
<maximumFileSize value="10000KB" />
<maxSizeRollBackups value="2" />
<param name="DatePattern" value='"."yyyy-MM-dd".log"' />
<param name="RollingStyle" value="date " />
<param name="StaticLogFileName" value="false" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level (%class.%method:%line) - %message%newline" />
</layout>
</appender>
<appender name="DebugLog" type="log4net.Appender.RollingFileAppender">
<file value="c:/MyAppDebug" />
<appendToFile value="true" />
<maximumFileSize value="10000KB" />
<maxSizeRollBackups value="2" />
<param name="DatePattern" value='"."yyyy-MM-dd".log"' />
<param name="RollingStyle" value="date " />
<param name="StaticLogFileName" value="false" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date{yyyy-MM-dd HH:mm:ss,fff} [%thread] %-5level (%class.%method:%line) - %message%newline" />
</layout>
</appender>
<!--
<root>
<level value="DEBUG" />
<appender-ref ref="Console" />
<appender-ref ref="BusinessLog" />
</root>
-->
<logger name="BusinessLogger">
<level value="INFO" />
<appender-ref ref="BusinessLog" />
</logger>
<logger name="DebugLogger">
<level value="DEBUG" />
<appender-ref ref="DebugLog" />
</logger>
</log4net>
※log4net.xmlの詳細について、解説を省略する。
※conversionPatternの解説について、次の記事を参照できる。
■[C#] Log4net(12) ConversionPatternの詳細
http://d.hatena.ne.jp/shima111/20060703/p1
3、log4net汎用クラスを作成する
log4netを利用しやすくなるため、汎用クラスを作成する。
例:
using log4net;
using log4net.Appender;
using log4net.Config;
namespace Common.Log
{
/// <summary>
/// ログ クラス
/// </summary>
public class Loggers
{
private static String LOG4NET_CONF_FILE = "C:\\myproject\\Log\\log4net.xml"; //適当なディレクトリ名に変更
private ILog biz;
private ILog debug;
private static Loggers instance = new Loggers();
/// <summary>
/// コンストラクタ
/// </summary>
private Loggers()
{
XmlConfigurator.Configure(new System.IO.FileInfo(LOG4NET_CONF_FILE));
biz = LogManager.GetLogger("BusinessLogger");
debug = LogManager.GetLogger("DebugLogger");
}
/// <summary>
/// ビジネスログ
/// </summary>
/// <returns></returns>
public static ILog BusinessLog
{
get { return instance.biz; }
}
/// <summary>
/// デバッグログ
/// </summary>
/// <returns></returns>
public static ILog DebugLog
{
get { return instance.debug; }
}
}
}
4)ログを出力
//リクエスト・エンド・イベント
protected void Application_EndRequest(object sender, EventArgs e)
{
Loggers.DebugLog.Debug("Request DebugLog.Debug。");
Loggers.BusinessLog.Debug("Request BusinessLog.Debug。");
Loggers.BusinessLog.Info("Request BusinessLog.Debug。");
}
実行すると、
c:/MyAppBiz.2010-01-04.log
2010-01-04 18:21:48,734 [8] DEBUG (Myapp.ServerEntry.Global.Application_EndRequest:65) -Request DebugLog.Debug。
c:/MyAppDebug.2010-01-04.log
2010-01-04 18:21:48,736 [8] DEBUG (Myapp.Global.Application_EndRequest:67) - Request BusinessLog.Info。
が生成される。
オープンソースのロギング・サービス「log4net」を使う
分享到:
相关推荐
《深入解析log4net:基于源代码的洞察》 log4net是一款强大的日志记录...log4net-2.0.8-src.zip和log4net-2.0.8文件包含了log4net的源代码和编译后的库,对于想要学习和研究log4net的开发者来说,是一份宝贵的资源。
Log4net是一个强大的开源日志记录组件,广泛应用于.NET框架中。它提供了丰富的日志管理功能,能够将日志信息按不同级别分类,并以多种格式输出到不同的目标,如文件、控制台、数据库等。使用Log4net可以方便地监控和...
在IT行业中,日志管理是系统监控和故障排查的关键环节,尤其在使用.NET框架开发应用程序时,C#的log4net库是一个非常流行的日志记录工具。log4net以其灵活性和强大的功能,允许开发者轻松地配置日志输出,包括日志...
**Log4Net 2.0.8 知识点详解** Log4Net 是一个流行的、开源的日志记录框架,由 Apache 软件基金会开发,主要用于.NET Framework 和 .NET Core 应用程序。这个框架提供了丰富的日志记录功能,允许开发者以灵活的方式...
**log4net源码分析** `log4net`是一款广泛使用的日志记录框架,它源自Java平台上的log4j,并被移植到了.NET环境中。这款开源库提供了强大的日志记录功能,支持多种输出方式,如控制台、文件、数据库等,且具有可...
Log4Net是Apache软件基金会开发的一个开源项目,它是一个强大的日志记录框架,广泛应用于.NET平台,用于在应用程序中记录各种级别的信息,如调试、警告、错误和致命错误。.NET 3.5是一个非常流行的.NET Framework...
Log4Net是Apache组织提供的一款强大的、灵活的日志框架,广泛应用于C#项目中,包括WinForm应用。本实例将详细介绍如何在WinForm应用中配置和使用Log4Net。 首先,我们要理解Log4Net的基本概念。Log4Net提供了一个可...
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" /> <log4net> <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender"> ...
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/> <log4net> <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender"> ...
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" /> ``` - 然后,在配置节内定义日志输出的目标(appender)和日志级别(level),例如输出到控制台: ```xml ...
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/> <log4net> <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender"> <layout type="log4...
例如,在ASP.NET Web应用中,可以在Global.asax.cs的Application_Start方法中初始化log4net,然后在代码中使用`log4net.ILog`接口记录日志。 ```csharp using log4net; private static readonly ILog log = ...
在.NET项目中使用log4net,需要引用`log4net.dll`库。可以通过NuGet包管理器安装,也可以直接从Apache官方网站下载。添加引用后,在程序启动时初始化log4net配置,并通过`log4net.Config.XmlConfigurator.Configure...
**log4Net.dll 使用详解** 在.NET开发环境中,日志管理是不可或缺的一部分,它能够帮助开发者追踪程序运行状态,定位错误,以及进行性能分析。Log4net是Apache软件基金会的一个开源项目,它为.NET Framework提供了...
在.NET 6框架下,构建一个控制台应用并结合log4net进行日志记录,同时将日志数据存储到数据库并支持自定义字段,是一项常见的系统监控和故障排查任务。以下将详细介绍如何实现这一功能。 首先,log4net是Apache的一...
配置log4net通常通过XML配置文件进行,如`log4net.config`。该文件中定义了日志的Appenders(输出目的地)、Layouts(输出格式)和Loggers(日志级别)等核心元素。例如: ```xml <log4net> ...
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/> <log4net> <appender name="AdoNetAppender" type="log4net.Appender.AdoNetAppender"> , System.Data, ...
本文将深入探讨如何在C#控制台应用程序中使用Log4net这一流行的日志框架。Log4net是Apache软件基金会的一个项目,它为.NET应用程序提供了强大的日志记录功能,具有灵活的配置和多种输出选项。 首先,我们要理解Log4...
Log4Net是.NET平台上一个广泛使用的日志框架,它提供了一种灵活的方式来管理和记录应用的日志信息。本文将详细讨论如何在.NET Core 5.0项目中全局注册Log4Net,以便在整个应用中统一使用日志服务。 首先,要使用Log...
- **初始化**:在程序启动时,通过 `log4net.Config.XmlConfigurator.Configure()` 方法加载配置文件并初始化 log4net。 - **日志记录**:在封装类中,创建一个静态的 `ILog` 对象,如 `private static readonly ...