首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > .NET > VB.NET > Log4net教程
【标  题】:Log4net教程
【关键字】:Log4net
【来  源】:http://www.cnblogs.com/fujingqiu/archive/2006/11/12/558152.html

Log4net教程

一.概述

使用可靠地第三方类库,比自己重新编写好得多。Log4net是由Apache开发的.Net.日志类库。并且已经很稳定。网址是:。本文基于1.2.10版。
作为Apache的著名开源项目,它有.Net,Java,C++等多个版本.
但是一般来说它只适合作调试是的单行日志,大量的那种.不太适合作正规的,带有调用堆栈的详细日志.

二.第一次使用log4net

1.添加引用:Log4net.dll和using log4net;
2.在需要作日志的类中加入变量
private ILog log = LogManager.GetLogger(typeof(类名));
3.在程序的启动方法中加入这条语句
XmlConfigurator.Configure(new System.IO.FileInfo("配置文件名"));
4.将配置文件写在启动项目的/bin/debug目录下.
5.配置文件的缺省内容如下所示:

<log4net>
 
<appender name="A1" type="log4net.Appender.ConsoleAppender">
  
<layout type="log4net.Layout.PatternLayout">
   
<conversionPattern value="%-4timestamp %level %logger - %message%newline" />
  
</layout>
 
</appender>
 
 
<root>
  
<level value="Debug" />
  
<appender-ref ref="A1" />
 
</root>
</log4net>

这个配置文件将日志输出到控制台上.
6.在需要将调试信息写入日志的地方,可以使用类似下面的语句:
log.Debug(String.Format("background at={0} last={1}", 变量一, 变量二));

三.功能设定

1.log4将日志功能划分为如下几个层次:
logger:日志信息的来源,缺省为root.可以设定为命名空间加类名的形式.
appender:日志的输出媒介,可以是控制台或者文件.
layout:日志的输出格式.常用的是log4net.Layout.PatternLayout.
Filter:把某些行日志从输出中过滤掉.

2.如果希望只在某个特定类中输出调试信息的话,可以加入特定的logger:

 <root>
  
<level value="Info" />
  
<appender-ref ref="A1" />
 
</root>
 
<logger name="StringGrid.CanvasView">
  
<level value="Debug" />
  
<appender-ref ref="A1" />
 
</logger>

3.如果想将日志写入文件,可以在配置文件中加入如下内容:

 <appender name="RollingFile" type="log4net.Appender.RollingFileAppender">
  
<file value="example.log" />
  
<appendToFile value="true" />
  
<maximumFileSize value="100KB" />
  
<maxSizeRollBackups value="2" />
  
<layout type="log4net.Layout.PatternLayout">
   
<conversionPattern value="%level %thread %logger - %message%newline" />
  
</layout>
 
</appender>

4.也可以让一个源输出到多个记录中:

 <root>
  
<level value="Info" />
  
<appender-ref ref="A1" />
  
<appender-ref ref="RollingFile" />
 
</root>

5.如果想将日志写入windows的EventLog,可以使用EventLogAppender.

STL的std::vector和.NET的ArrayList,何者速度较快?:【上一篇】
当Visual Studio的Solution/Project无法开启时怎么办?:【下一篇】
【相关文章】
  • log4net和SQL Server 2000
  • C#中log4net的使用
  • dll文件与log4net.dll的使用
  • NHibernate的调试技巧和Log4Net配置
  • 日志记录组件[Log4net]详细介绍
  • log4net面面观之Repository
  • 续:“改进log4net支持按日期产生日志文件”
  • log4netShow
  • Log4Net Appender 之 ADONetAppender
  • 使用log4net将日志记入PostgreSql
  • 【随机文章】
  • oracle数据库备份与恢复 a piece of cake (3)
  • Photoshop 简单去网纹法
  • 传奇世界 1.72版新套装,老套装大幅度跌价
  • Vmware 实现一台电脑中的网络
  • 精诚MES条码生产制造执行系统
  • 某一m1卡收费管理系统有问题明细记录数据t-sql排查代码(草稿)
  • Fvwm--命令AddToMenu
  • 用Mysql库存储用户名及密码的方式搭建虚拟用户的vsftpd服务器
  • 【转帖】国内软件测试中文书籍大全
  • Oracle 8i
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.