C#中使用Log4Net记录日志
https://www.cnblogs.com/W--Jing/p/8125652.html 实例参考
https://www.cnblogs.com/soundcode/p/4866078.html配置文件中参数介绍
log4net(Log For Net)是Apache开源的应用于.Net框架的日志记录工具,详细信息参见Apache网站.它是针对Java的log4j(Log For Java的)姊妹工具.用过log4j的都知道,它功能强大,可配置性灵活,线程安全,对日志的输出管理和级别管理方便。
首先你应该下载log4net.dll并引入到你的项目References中,或者把源代码项目作为你工程的一部分加入到你的工程当中。
使用log4net需要知道其中两个比较重要的概念:logger 和 appender。前者是日志记录对象,后者是日志记录的目标,包括控制台,文件,定量大小的文件,远程广播。也就是说我们使用log4net的过程可以是这样的:获得一个用来记录日志的工具对象logger,然后为logger对象指定日志的记录位置.美妙的是,这一切工作都可以在Web.config配置文件中完成,所用的代码极少.
其配置如下:
先在web.config中的<configuration>节点下添加如下配置:
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
用过web.config自定义节点的朋友都知道,还应该配置log4net节点,接下来在<configuration>节点下添加如下log4net节点配置:
1<log4net debug="false">
2 <appender name="LogFileAppender" type="log4net.Appender.FileAppender" >
3 <param name="File" value="c:\Applog.txt" />
4 <param name="datePattern" value="yyyy-MM-dd HH:mm" />
5 <param name="AppendToFile" value="true" />
6 <layout type="log4net.Layout.PatternLayout">
7 <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
8 </layout>
9 </appender>
10 <appender name="HttpTraceAppender" type="log4net.Appender.ASPNetTraceAppender" >
11 <layout type="log4net.Layout.PatternLayout">
12 <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
13 </layout>
14 </appender>
15 <appender name="EventLogAppender" type="log4net.Appender.EventLogAppender" >
16 <layout type="log4net.Layout.PatternLayout">
17 <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
18 </layout>
19 </appender>
20 <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
21 <param name="File" value="C:\Log.txt" />
22 <param name="AppendToFile" value="true" />
23 <param name="MaxSizeRollBackups" value="10" />
24 <param name="MaximumFileSize" value="5MB" />
25 <param name="RollingStyle" value="Size" />
26 <param name="StaticLogFileName" value="true" />
27 <layout type="log4net.Layout.PatternLayout">
28 <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
29 </layout>
30 </appender>
31 <root>
32 <level value="DEBUG" />
33 <appender-ref ref="LogFileAppender" />
34 </root>
35</log4net>
从上面的配置中可以看到定义了多个appender,每一个appender就是一个日志记录的目标。root节点指定了选用哪一个 appender. 在这里我选用了LogFileAppender。
到这里配置就基本上完成了,但是怎么使用上面的配置呢?log4net为我们提供了在应用程序启动时加载配置信息的入口,很简单,在Global.asax.cs的Application_Start过程中添加如下代码:
log4net.Config.DOMConfigurator.Configure();
好了,到此为止整个配置过程完成了,下面是怎么调用的问题了。
新建一个log4nettest.aspx页面,在cs文件中添加引用 using log4net;定义本页的一个全局变量:
private static readonly ILog log = LogManager.GetLogger(typeof(log4nettest));
然后在Page_Load中添加如下代码:log.Debug("这是我在使用Log4Net");运行该页面,在C:\下面会生成一个Applog.txt文本文件,打开看看,里面就有你写入的日志。
C#中使用Log4Net记录日志的更多相关文章
- ASP.NET MVC4 Web项目中使用Log4Net记录日志到文件和数据库。
下载与.netframework版本向对应的log4net.dll ,然后添加引用.下载地址:http://logging.apache.org/log4net/download_log4net.cg ...
- ASP.NET MVC Web项目中使用Log4Net记录日志,并按照日志类型分文件存储
1.创建MvcLog4Net项目 2.创建 空的MVC项目 3.项目创建完成的效果 4.选择项目,点击鼠标右键,在弹出菜单中选择“管理解决方案的 NuGet 程序包” 5. 在NuGet浏览界面: 点 ...
- 在ASP.NET MVC中使用Log4Net记录异常日志,出错时导向到静态页
本篇体验在ASP.NET MVC 4中使用Log4Net记录日志. 通过NuGet安装Log4Net. 需求是:当出错时导向到Error.html静态页面,Log4Net记录错误信息. 大致的思路是: ...
- 将WebService部署到 SharePoint 2010 gac 缓存中,并用Log4Net记录日志到数据库
最近做了一个sharePoint项目,需要实现的功能是,第三方网站访问我们sharePoint中的数据,通过Webservice方式实现文件的上传和下载. 于是代码工作完成了之后,本地调试没什么问题, ...
- 使用 Log4Net 记录日志
第一步:下载Log4Net 下载地址:http://logging.apache.org/log4net/download_log4net.cgi 把下载的 log4net-1.2.11-bin-n ...
- [转]C#使用Log4Net记录日志
第一步:下载Log4Net 下载地址:http://logging.apache.org/log4net/download_log4net.cgi 把下载的 log4net-1.2.11-bin-n ...
- 使用Log4net记录日志
首先说说为什么要进行日志记录.在一个完整的程序系统里面,日志系统是一个非常重要的功能组成部分.它可以记录下系统所产生的所有行为,并按照某种规范表达出来.我们可以使用日志系统所记录的信息为系统进行排错, ...
- VS2010中NET4项目中使用LOG4NET办法
两年以前项目中是用的log4net.dll是net2.0环境下面的,最近在官网http://logging.apache.org/log4net/download_log4net.cgi找到了net4 ...
- C# 使用 log4net 记录日志
Ø 前言 在一般的开发应用中,都会涉及到日志记录,用于排查错误 或 记录程序运行时的日志信息.log4net 库是 Apache log4j 框架在 Microsoft .NET 平台的实现,是一个 ...
随机推荐
- 安装php环境
安装xampp 安装zend studio 安装Composer-Setup 安装Z2 ZendFramework-2.4.9 I can install successfully using the ...
- bash脚本编程学习笔记(一)
bash脚本语言,不同于C/C++是一种解释性语言.即在执行前不需要事先转变为可执行的二进制代码,而是每次执行时经解释器解释后执行.bash脚本语言是命令的堆砌,即按照实际需要,结合命令流程机制实现的 ...
- vscode 本地调试nodejs
1.首先通过node-inspect插件可以debug nodejs ,先起nodejs服务,再启用node-inpector服务 安装调试器 npm install -g node-inspec ...
- 如何使用Node爬虫利器Puppteer进行自动化测试
文:华为云DevCloud 乐少 1.背景 1.1 前端自动化测试较少 前端浏览器众多导致页面兼容性问题比较多,另外界面变化比较快,一个月内可能页面改版两三次,这样导致对前端自动化测试较少,大家也不是 ...
- 【Quartz】一个小Demo
Quartz是一个优秀的框架,功能强大,用法简单,比如说下面这个例子. (1)引入Jar包 <!-- quartz 模块 --> <dependency> <groupI ...
- C#-MVC-强数据类型、TempData、多表单、ajax
一.强数据类型 将某一个或一组数据在控制器传递到视图上去 一个视图里只能有一个强类型数据 强类型数据 - 将某一个或一组数据在控制器传递到视图上去,同ViewBag,数据更稳定,防止多数据传递中出现错 ...
- 关于ubuntu环境下gcc使用的几点说明
sudo apt-get build-dep gcc //安装gcc编译器 /* 假设已经创建hello.c文件 */ //方法一 $gcc hello.c //将源文件直接编译成文件名为a.out的 ...
- Vue 混入(mixins)
详细参考官方文档 基础 混入 (mixins) 是一种分发 Vue 组件中可复用功能的非常灵活的方式.混入对象可以包含任意组件选项.当组件使用混入对象时,所有混入对象的选项将被混入该组件本身的选项. ...
- dp--最大区间和变形-cf-1155D
dp--最大区间和变形-cf-1155D D. Beautiful Array time limit per test 2 seconds memory limit per test 256 mega ...
- vSphere通过Client创建Centos7主机
准备: vSphere Client 客户端 Centos7官方镜像,本次采用的是CentOS-7-x86_64-Minimal-1511.iso 创建过程: 1.登录vSphere虚拟主机,输入账户 ...