惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

The GitHub Blog
The GitHub Blog
S
SegmentFault 最新的问题
L
LangChain Blog
Simon Willison's Weblog
Simon Willison's Weblog
N
News and Events Feed by Topic
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
WordPress大学
WordPress大学
M
MIT News - Artificial intelligence
A
About on SuperTechFans
Microsoft Security Blog
Microsoft Security Blog
I
Intezer
Know Your Adversary
Know Your Adversary
H
Heimdal Security Blog
博客园 - 叶小钗
B
Blog RSS Feed
F
Fortinet All Blogs
Hacker News: Ask HN
Hacker News: Ask HN
A
Arctic Wolf
小众软件
小众软件
Help Net Security
Help Net Security
MongoDB | Blog
MongoDB | Blog
aimingoo的专栏
aimingoo的专栏
G
Google Developers Blog
Forbes - Security
Forbes - Security
Latest news
Latest news
AI
AI
I
InfoQ
H
Hackread – Cybersecurity News, Data Breaches, AI and More
C
CXSECURITY Database RSS Feed - CXSecurity.com
W
WeLiveSecurity
C
Cybersecurity and Infrastructure Security Agency CISA
人人都是产品经理
人人都是产品经理
Cyberwarzone
Cyberwarzone
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
J
Java Code Geeks
Engineering at Meta
Engineering at Meta
C
Cyber Attacks, Cyber Crime and Cyber Security
O
OpenAI News
博客园 - 【当耐特】
T
Threat Research - Cisco Blogs
GbyAI
GbyAI
U
Unit 42
D
Darknet – Hacking Tools, Hacker News & Cyber Security
G
GRAHAM CLULEY
Apple Machine Learning Research
Apple Machine Learning Research
宝玉的分享
宝玉的分享
Google DeepMind News
Google DeepMind News
T
Threatpost
T
The Blog of Author Tim Ferriss
罗磊的独立博客

博客园 - asheng

JavaScript UI选型及Jquery EasyUI使用经验谈 云计算风险识别 五年之痒 敏捷软件开发 嫁给程序员吧!!! Cute Editor for .NET v6.4 Java与.NET的WebServices相互调用 用户体验5大要素 【转】LINQ To XML 入门(3) 【转】LINQ To XML 入门(2) 【转】LINQ To XML 入门(1) 学写Windows Service 微软发布ASP.NET MVC框架1.0正式版 Web定时任务 CSS分类编写方法 JS中错误处理(2) JS中错误处理(1) OWC画图表 - asheng - 博客园 好员工为什么会变坏
Log4Net
asheng · 2009-01-20 · via 博客园 - asheng

Log4Net很早以前就听说过 可一直没有仔细看过
终于有时间 想看看它了 花了点时间研究了下
1.介绍
Log4net是基于.net开发的一款非常著名的记录日志开源组件。他最早是2001年7月由NeoWorks Limited启动的项目,基本的框架源于另外的一个非常著名的姐妹组件-log4j(可惜.net下怎么就没有这样优秀的软件首先出现呢,都要从j那边“引进”)。Log4net记录日志的功能非常强大。它可以将日志分不同的等级,比不同的样式,将日志输出到不同的媒介。
官方网站:http://logging.apache.org/log4net/
下载:http://logging.apache.org/log4net/download.html开源
下载包里包括.net 1.0/1.1/2.0等版本和各种平台下的DEMO
官方SDK:http://logging.apache.org/log4net/release/sdk/index.html
2.使用
   2.1引入log4net.dll组件
   2.2建立一个配置文件
两种方法,一种是在Web.Config或App.Config里
加入以下配置节

Code

上面的配置节,复制就可以用了加入log4net配置内容的定义,这个紧接着上面的内容定义在config文件里就可以了,下面是一个范例:

Code

   2.3 关联配置文件
当我们创建了上面的配置文件后,我们接下来需要把它和我们的应用联系起来。缺省的,每个独立的可执行程序集都会定义它自己的配置。log4net框架使用 log4net.Config.DOMConfiguratorAttribute在程序集的级别上定义配置文件。
例如:可以在项目的AssemblyInfo.cs文件里添加以下的语句
[assembly:log4net.Config.DOMConfigurator(ConfigFile="filename",
  ConfigFileExtension="ext",Watch=true/false)]
l         ConfigFile:[/B]指出了我们的配置文件的路径及文件名,包括扩展名。
l         ConfigFileExtension:[/B]如果我们对被编译程序的程序集使用了不同的文件扩展名,那么我们需要定义这个属性,缺省的,程序集的配置文件扩展名为”config”。
l         Watch (Boolean[/B]属性):[/B] log4net框架用这个属性来确定是否需要在运行时监视文件的改变。如果这个属性为true,那么FileSystemWatcher将会被用来监视文件的改变,重命名,删除等事件。
其中:ConfigFile和ConfigFileExtension属性不能同时使用,ConfigFile指出了配置文件的名字,例如,ConfigFile=”Config.txt”
ConfigFileExtension则是指明了和可执行程序集同名的配置文件的扩展名,例如,应用程序的名称是”test.exe”,ConfigFileExtension=”txt”,则配置文件就应该是”test.exe.txt” ;
对于Web网站 可以在Global.asax 配置如下:

Code


2.4 测试 
    

Code

3.说明:
  关键在于配置,弄清楚了2.2中的配置以后,对于使用就没有任何问题了。
  这个东西的强大是有很多中记录日志的方式,在我给出的配置文件里 写出了好几种记录输出方式,经过我亲自测试,都是可以使用的。其实还有很多记录输出方式(参见http://www.cnblogs.com/shyblog/archive/2008/11/18/1336052.html),感觉很少会用到,我这里就没有提到了。
个人推崇的三种记录日志方式:
(1)数据库记录(如果不影响系统性能,此为首选,方便查询与统计)
(2)windows 事件日志 (这个使我感到它的强大)
(3)电子邮件
其实在实际过程中可以筛选,或者多种输出方式交替使用,比如 所有类型的日志都记录到数据库,等级在WARN以上的日志记录到windows或者文本中,ERROR类型以上的的发送到管理员邮箱。
4.其他:
   其实还有很多配置和使用我没有了解清楚,这个还有待以后具体了解。
   同时我还碰到几个问题
(1)日志记录近数据库时,感觉有较长的延时(慢5分钟左右,数据库为SQL Server 2000),不知为何
(2)若用多种方式,或者仅用一种方式输出日志时,对系统性能是否有较大影响
(3)应用系统出了关键错误时,那个时候log4net是不是根本就没发发挥作用了,因为系统挂掉了~
5.参考文章(排名部分先后):
(1)Log4Net使用指南 http://www.cnblogs.com/dragon/archive/2005/03/24/124254.html
(2)解决log4net独占日志文件的问题以及 log4net的各种输出配置(Appender) http://www.cnblogs.com/jacktu/archive/2007/12/05/984487.html
(3).NET开源项目介绍及资源推荐:日志记录  http://www.cnblogs.com/Terrylee/archive/2006/12/03/opensource_framework_and_resource_recommendation_Log.html
(4)Log4Net五步走 http://heroman.cnblogs.com/archive/2006/01/09/314053.html
(5)Log4Net 开发文档 http://www.cnblogs.com/macroxu-1982/archive/2008/12/04/1347407.html
(6)Log4net学习笔记  http://www.cnblogs.com/agtaimaer/archive/2008/11/15/log4net.html
(7)DEMO下载 https://files.cnblogs.com/agtaimaer/Log4netDemo.rar

//****************************************
  by: Amen cnblogs博客  转载请注明出处
//****************************************