`
pcajax
  • 浏览: 2161603 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

在.Net中使用log4Net

阅读更多
1:写在前面:

  由于最近在项目中用到了log4Net,所以拿来和大家分享一下,我们都知道在开发项目中,大家有可能会用到日志功能,记录日志的方法很多,在.net中微软为我们提供了EntLib(Enterprise library ) Logging Application Block日志记录模块;另外我们也可以使用Apache的log4net日志模块,当然了我们也可以用自己的方法来记录日志,不管使用什么方法来记录日志,我们的目的就是在项目部署以后,能够很快定位程序中的bug,提高我们解决bug效率。了解整个系统的运行情况,因为我们在开发阶段我们可以通过调试来检查bug,一旦程序部署了以后,使用这种方法也许不太可能了。所以日志是我们找出原因的最佳路径,由于log4net支待多平台,且运行效率要比EntLib来的高,不过据说log4Net已以很久没有更新了,我们暂且不关注这个。本文部分内容翻译于http://logging.apache.org/log4net.

  2:Log4net DLL

  要想在我们的项目中能够使用Log4net ,我们需要引用Log4net dll文件,这个文件我们可以从官方站下载

  http://logging.apache.org/log4net/download.html    这是一个solution需要编译后才可以产生dll文件.

  以可以从CSDN上下载:

  http://download.csdn.net/source/839743

  3:Log4Net的特性

 

  • Support for multiple frameworks(目前好像只有1.0.1.1,2.0的版本,没有3.5的)
  • Output to multiple logging targets
  • Hierarchical logging architecture
  • XML Configuration
  • Dynamic Configuration(可以在程序运行的时候修改配置文件)
  • Logging Context
  • Proven architecture
  • Modular and extensible design
  • High performance with flexibility

     

     

      4:Log4Net的结构

      Log4net有三个主要的组件,他们分别是:loggers,appenders and layouts。

      Logger是最主要的组件,它用来产生日志消息。日志需要经过Layout的格式化处理后才会输出。就类似于文件流,Logger就是用来产生文件流的,Layout就是定义文件流输出的格式,是二进制流还是Xml等等. appenders 就类似于输出文件流,文件流的位置,如控制台还是文本等等.所以理解这三者的关系后,我们就可以使用Log4Net了.Logger提供了多种方式来记录一个日志消息,你可以在你的应用程序里创建多个Logger,每个实例化的Logger对象都被log4net框架作为命名实体来维护。这意味着为了重用Logger对象,你不必将它在不同的类或对象间传递,只需要用它的名字为参数调用就可以了。Log4net框架定义了一个ILog接口,所有的logger类都必须实现这个接口。ILog接口的部分代码定义如下:

     Layout的转换模式:

     

    %m(message):输出的日志消息,如ILog.Debug(…)输出的一条消息

    %n(new line):换行

    %d(datetime):输出当前语句运行的时刻

    %r(run time):输出程序从运行到执行到当前语句时消耗的毫秒数

    %t(thread id):当前语句所在的线程ID

    %p(priority): 日志的当前优先级别,即DEBUG、INFO、WARN…等

    %c(class):当前日志对象的名称,例如:

    模式字符串为:%-10c -%m%n

    代码为:

    <!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->ILog log
  • 分享到:
    评论

    相关推荐

      Log4Net .net3.5版本

      在.NET 3.5环境中使用这个版本的Log4Net,开发者需要注意以下几点: 1. **安装和引用**:将`log4net.dll`添加到项目引用中,确保项目的.NET Framework版本设置为3.5。 2. **配置文件**:将`log4net.xml`添加到项目...

      .Net 使用Log4Net 获取系统日志并写入数据库

      总结起来,通过Log4Net,我们可以方便地在.NET应用中捕获异常信息并将其存储到数据库中,便于后期分析和调试。Log4Net的灵活性和可配置性使其成为.NET开发中不可或缺的工具,帮助开发者实现高效、可靠的日志记录。在...

      .NET Core引入Log4Net日志

      首先,为了在.NET Core项目中使用Log4Net,我们需要进行以下步骤: 1. 添加Log4Net引用:由于Log4Net不是.NET Core的内置组件,我们需要通过NuGet包管理器或`.csproj`文件手动添加依赖。在命令行或Visual Studio中...

      Log4net .net 4.0版本

      在.NET 4.0版本中,log4net保持了其一贯的强大功能,并优化了对新.NET框架版本的支持。 **1. 日志级别与分类** Log4net支持多种日志级别,包括DEBUG、INFO、WARN、ERROR、FATAL以及ALL和OFF。这些级别允许开发者...

      net6 控制台+ log4net+写数据库+自定义字段

      在.NET 6中使用log4net,你需要先在项目中引入log4net库,这可以通过NuGet包管理器完成。 1. **配置log4net**: - 在项目中创建一个`log4net.config`文件,定义日志记录的配置。例如,你可以配置一个...

      最好的.NET日志组件log4net.dll,.NET4.0适用

      4. **使用API**:在代码中,通过log4net提供的接口如`ILog`,编写日志输出代码,如`logger.Debug("Debug信息")`。 5. **调试与调整**:根据日志输出结果,调整日志级别、Appender设置,以满足实际需求。 **总结** ...

      Log4Net日志插件在.net中的使用示例(文件型日志、SQLite数据库型日志)

      使用log4net进行日志记录在项目中使用的示例。 本示例中包含常用的写日志到文件(按日期自动生成文件名称)及写日志到SQLite数据库两种方式。 示例资源中包含源码及演示作品两部分,使用前请先修改SQLite数据库的...

      .net log4jdemo log4j日志

      本文将详细介绍如何在.NET项目中使用Log4jDemo,以实现高效、灵活的日志管理。 首先,Log4j是一个开源的日志记录库,由Apache软件基金会开发。它的设计理念是提供一个可配置、可扩展的日志框架,允许开发者根据需要...

      Asp.net Log4Net 日志实例下载

      本文将深入探讨Asp.net中使用Log4Net进行日志管理的实例,包括如何配置、使用以及生成按日期分类的.htm日志文件。 首先,我们需要理解Log4Net的基本概念和架构。Log4Net提供了一个灵活的框架,可以方便地在代码中...

      .net下log4net使用方法详解

      在.NET应用程序中使用log4net时,开发者需要遵循配置好log4net后,在代码中创建一个特定的ilog实例,然后通过这个实例调用相应级别的日志记录方法,如Info、Error、Fatal、Debug、Warn等方法记录信息。这种方式使得...

      LOG4.net日志控件使用示例项目

      - **日志记录**:在代码中使用`ILog`接口和`LogManager`类获取并使用日志实例,如`var log = LogManager.GetLogger(typeof(MyClass));`,然后通过`log.Debug()`, `log.Info()`, `log.Warn()`, `log.Error()`, `log....

      net Core 5.0 Log4Net 全局注册

      在.NET Core项目中,我们可以通过Visual Studio的包管理器控制台或使用命令行工具`dotnet add package log4net`来安装。安装完成后,Log4Net的相关库会自动添加到项目的引用中。 接下来,我们需要配置Log4Net。配置...

      log4net 2.0.8 dll各个.net版本

      《深入理解log4net 2.0.8在.NET各版本中的应用》 在.NET开发领域,日志记录是不可或缺的一部分,它能够帮助开发者跟踪程序运行状态,定位和解决问题。log4net作为Apache软件基金会的一个项目,是.NET平台上广泛使用...

      log4net vs2010 .net4

      描述中提到"log4net的dll文件"是指这个压缩包包含的是log4net的可执行组件(DLL),这是.NET应用程序中的一个关键部分,它允许程序在运行时引用并使用log4net的功能。专为VS2010和.NET 4.0设计意味着这个版本可能...

      .NET 6 使用 Log4Net 和 Nlog日志中间件 Demo

      log4net库是Apache log4j框架在Microsoft .NET平台的实现,是一个帮助程序员将日志信息输出到各种目标(控制台、文件、数据库等)的工具。 log4net是Apache软件基金会Apache Logging Services工程的一部分。Apache...

      C#控制台应用使用Log4net日志

      本文将深入探讨如何在C#控制台应用程序中使用Log4net这一流行的日志框架。Log4net是Apache软件基金会的一个项目,它为.NET应用程序提供了强大的日志记录功能,具有灵活的配置和多种输出选项。 首先,我们要理解Log4...

      Log4net的使用 asp.net中log4net的使用方法

      以下是对Log4net在ASP.NET中使用方法的详细解释。 ### 一、安装Log4net 首先,你需要在你的ASP.NET项目中添加Log4net的引用。这可以通过NuGet包管理器来完成,搜索"Log4net"并安装。安装完成后,将`log4net.dll`...

      .net中log4net的用法

      总结来说,Log4Net是.NET开发中的强大日志工具,其丰富的配置选项、易于使用的API以及高性能的特性,使得日志管理变得高效且便捷。理解并熟练运用Log4Net,能有效提升软件的可维护性和稳定性,是每个.NET开发者应当...

      Log4J的在asp.net中的使用介绍文档

      **二、在ASP.NET中使用Log4J的准备** 1. **安装依赖**: 由于ASP.NET原生不支持Log4J,我们需要通过第三方库(如log4net,它是Log4J的.NET实现)来实现。可以通过NuGet包管理器安装log4net。 2. **配置log4net**: ...

      log4net 日志类封装

      log4net 是 Apache 组织提供的一款开源的日志框架,广泛应用于 .NET 开发环境中。本文将深入探讨 log4net 的核心概念和如何进行日志类的封装。 ### 1. log4net 概述 log4net 是一个灵活的、高性能的日志记录框架,...

    Global site tag (gtag.js) - Google Analytics