对于一个大型网站与系统来说,日志是必备的工具,通过日志你可以非常清楚程序的运行情况,及时得到反馈来解决问题,下面介绍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="&quot;Logs_&quot;yyyyMMdd&quot;.txt&quot;"/> <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_DataLogs.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

本文版权归作者和学IT网共有,欢迎转载,但未经作者同意必须保留此段声明,并且保留原文链接。否则保留追究法律责任的权利。

转载于:https://www.cnblogs.com/zhangpanlong/p/3709398.html

ASP.NET使用log4Net日志组件教程(按日期与按日志大小切割)相关推荐

  1. python 日志不会按照日期分割_python日志切割保留一个月

    公司的nginx日志都放在一个文件里,时间长了,日志也变的很大,查起来也很不方便,所以决定将nginx的日志切割下,当然日志切割用shell写更方便,但为了让自己多实践下python,故用python ...

  2. 开源:如何优雅的实现一个操作日志组件

    1. 背景 日志几乎存在于所有系统中,开发调试日志的记录我们有log4j,logback等来实现,但对于要展示给用户看的日志,我并没有发现一个简单通用的实现方案.所以决定为之后的开发项目提供一个通用的 ...

  3. .NET6.0的日志组件Log4net

    前言:不允许让没有任何日志监控的项目上线,所以说真正开发起来必须要有监控,相当于多一双眼睛帮着我们看项目在运行时会不会有什么问题,我们要不断的在每个环节写日志,这样发生异常我们可以快速知道哪里有问题了 ...

  4. ASP.NET Core 2.0 配置NLog日志组件

    2019独角兽企业重金招聘Python工程师标准>>> 1).添加nlog.config配置文件 <?xml version="1.0" encoding= ...

  5. .net中,日志组件 Nlog,SerialLog, Log4Net的用法

    源码:https://download.csdn.net/download/helldoger/85778816 以.NET6 Winform为例 <Project Sdk="Micr ...

  6. 基于log4net的日志组件扩展封装,实现自动记录交互日志 XYH.Log4Net.Extend(微服务监控)...

    背景: 随着公司的项目不断的完善,功能越来越复杂,服务也越来越多(微服务),公司迫切需要对整个系统的每一个程序的运行情况进行监控,并且能够实现对自动记录不同服务间的程序调用的交互日志,以及通一个服务或 ...

  7. ASP.NET 配置log4net日志功能

    log4net下载地址 http://logging.apache.org/log4net/download_log4net.cgi log4net-1.2.13-bin-newkey.zip(编译好 ...

  8. asp.net + winform + log4net 使用示例|using log4net with asp.net/winform

    log4net, 是 apache.org 在 log4j的基础上推出的针对.NET程序的开源的日志组件. log4net目前的最新版本是 1.2.10,log4net支持的日志保存方式,可谓丰富之极 ...

  9. nlog轻量级日志组件

    一.NLog简要介绍: 1.NLog是一个简单灵活的.NET日志记录类库.通过使用NLog,我们可以在任何一种.NET语言中输出带有上下文的(contextual information)调试诊断信息 ...

最新文章

  1. UE5使用MetaHuman构建超现实的角色
  2. 创建BAPI程序的步骤
  3. 剑指offer之31-35题解
  4. 【剑指offer】包含min函数的栈
  5. Zynq7000开发系列-5(OpenCV开发环境搭建:Ubuntu、Zynq)
  6. cmd模式下如何从c盘转换到其他盘
  7. 【算法】汉诺塔 移动
  8. 压缩与解压缩 与多个安装文件的合并问题
  9. Spring + MyBatis配置整合
  10. VS2015/VS2017必须在WINDOWS10上安装
  11. 全局变量在多个进程中不共享
  12. pmp学习资料_201912期PMP学习内容汇总表
  13. 07 -MATLAB数值微积分与方程求解
  14. 疫情情况下酒店办理入住流程
  15. c语言 约分最简分式
  16. 十三天学会C语言笔记
  17. 什么是程序化交易?如何快速入门?
  18. Win系统 - Windows10 系统恢复语言栏位置的方法(一)
  19. 2018第五届“云鼎奖”申报启动
  20. mysql数据库怎么该用户名和密码_如何修改MySql数据库的用户名和密码?

热门文章

  1. css截断长文本显示
  2. hdu 1042 N!(大数)
  3. IIS 6.0 401 错误
  4. PyCharm 3.0 发布,提供免费开源版本
  5. getter和setter
  6. mysql的单页应用框架搭建_采用vue+webpack构建的单页应用——私人博客MintloG诞生记...
  7. opencv怎么2个摄像头_最后2个月,怎么做能够快速提分?
  8. 我眼中的计算机,我眼中的计算机-计算机开机背后的故事
  9. oracle不开归档对效率会快吗,关于性能:存档庞大的数据库(oracle),而不会影响向其插入记录的进程...
  10. 在本地机房享受专属公共云服务,详解阿里云本地化部署服务云盒