在做目前的项目中用到别的小组开发的一个日记记录的类,今天打开源程序看了一下,原来是在组件外又包了一层,于是自已试了试组件的应用。
一.简介
是apache组织开发的日志组件, 可以从 //downloads.html下 载的源代码。
同log4j一样(java下的日志记录组件)用户要在自己的程序里加入日志功能,只需将.dll引入工程即 可。
是一个开源项目. 可以以插件的形式应用在你的系统中。
程序员在使用ErrorLog做日志记录的时候完全不用关心的工作方式,只需简单的调用即可。
二.配置
1. 引用.dll到项目中。
2. 加载配置,在使用做日志记录之前必须要对进行配置。
可在程序集中设置[assembly: .Config.DOMConfigurator()]
也可在使用前设置.Config.DOMConfigurator.Configure();
这句话也可放到global中Application_Start,在application启动时加载
3.可以看到上面的代码都没有参数. 是载入了缺省配置. 该配置必须设置于web.config或者app.config中。
在web.cofig根节点 configuration 中加入如下section:
<configSections>
<section name="" type=".Config.Log4NetConfigurationSectionHandler, " />
</configSections>
4.该 config section 声明了名为 的另外一个config section. 后者必须位于web.config根节点 configuration 下: 以下是一个示例:
< debug="false">
<appender name="LogFileAppender" type=".Appender.FileAppender" >
<param name="File" value="XxxxApplication.log.txt" />
<param name="datePattern" value="MM-dd HH:mm" />
<param name="AppendToFile" value="true" />
<layout type=".Layout.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>
<appender name="HttpTraceAppender" type=".Appender.ASPNetTraceAppender" >
<layout type=".Layout.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>
<appender name="EventLogAppender" type=".Appender.EventLogAppender" >
<layout type=".Layout.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>
<appender name="RollingLogFileAppender" type=".Appender.RollingFileAppender">
<param name="File" value="_LogDataLog.txt" />
<param name="AppendToFile" value="true" />
<param name="MaxSizeRollBackups" value="10" />
<param name="MaximumFileSize" value="5MB" />
<param name="RollingStyle" value="Size" />
<param name="StaticLogFileName" value="true" />
<layout type=".Layout.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>
<root>
<level value="DEBUG" />
<appender-ref ref="LogFileAppender" />
</root>
</>
5. 以上定义了多个appender. 简单来说, 每一个 appender 都是一种输出介质。
6. root节点指定了选用的 appender. 本例选用了LogFileAppender. (文本文件输出). 在Appender定义中定义了输出的格式. 和目标文本文件所在位置. (起始位置是应用程序根目录. (web.config所在目录).
如此便配置好了。
7、关于配置中ConversionPattern 的转换符
每种转换符号都以%开始,后面跟着一个格式符号和换符号。
%-数字 :该项的最小长度,小于最小长度的用空格填充
%m(message):输出的日志消息
%n(new line):换行
%d(datetime):输出当前语句运行的时刻
%r(run time):输出程序从运行到执行到当前语句时消耗的毫秒数
%t(thread id):当前语句所在的线程ID
%p(priority): 日志的当前优先级别,即DEBUG、INFO、WARN…等
%c(class):当前日志对象的名称,
%L(line ):输出语句所在的行号
%F(file name):输出语句所在的文件名
如 "%-5p [%t]- %m%n"
.ILog M_Log = LogManager.GetLogger(this.GetType());
M_Log .Debug("Test");
生成输出为
DEBUG [main]- Test
8、level级别
在配置文件的ROOT里有<level value="DEBUG" />设置级别的语句
level 有 ALL<DEBUG <INFO<WARN<ERROR<FATAL<OFF 这么几级,大小关系也是这样 如果你调用 m_log.Info("message") 即是INFO级别,如果设置的级别为<level value="ERROR" />那就输出不到日志文件,相反如果低于就能输出
三,使用
调用类的Debug、Info、Warn、Error、Fatal等方法,如果级别高于设置级别即可将日志写入日志文件。
各种方法实现后的效果是一样的,仅是在日志文件中标注出等级。
搬瓦工怎么样?这几天收到搬瓦工发来的邮件,告知香港pccw机房(HKHK_1)即将关闭,这也不算是什么出乎意料的事情,反而他不关闭我倒觉得奇怪。因为目前搬瓦工香港cn2 GIA 机房和香港pccw机房价格、配置都一样,可以互相迁移,但是不管是速度还是延迟还是丢包率,搬瓦工香港PCCW机房都比不上香港cn2 gia 机房,所以不知道香港 PCCW 机房存在还有什么意义?关闭也是理所当然的事情。点击进...
哪里购买香港云服务器便宜?众所周知,国内购买云服务器大多数用户会选择阿里云或腾讯云,但是阿里云香港云服务器不仅平时没有优惠,就连双十一、618、开年采购节这些活动也很少给出优惠。那么,腾讯云虽然海外云有优惠活动,但仅限新用户,购买过腾讯云服务器的用户就不会有优惠了。那么,我们如果想买香港云服务器,怎么样购买香港云服务器便宜和优惠呢?下面,云服务器网(yuntue.com)小编就介绍一下!我们都知道...
HostKvm又上新了,这次上架了2个线路产品:俄罗斯和香港高防VPS,其中俄罗斯经测试电信CN2线路,而香港高防VPS提供30Gbps攻击防御。HostKvm是一家成立于2013年的国外主机服务商,主要提供基于KVM架构的VPS主机,可选数据中心包括日本、新加坡、韩国、美国、中国香港等多个地区机房,均为国内直连或优化线路,延迟较低,适合建站或者远程办公等。俄罗斯VPSCPU:1core内存:2G...