
1.Log工具简单比较
Log4cpp & Log4CPlus:C++的日志库,可移植移性相对差些
Log4c:C的日志库,基本上都是一些纯c的东西,移植性较好
2.Log4c的基本概念
Log4c中有三个重要的概念, Category, Appender, Layout。
Category用于区分不同的日志,在一个程序中我们可以通过Category来指定很多的日志。
Appdender用于描述输出流,通过为Category来指定一个Appdender,可以决定将log信息来输出到什么地方去,比如stdout, stderr, rollingfile等等。
Layout用于指定日志信息的格式,通过为Appender来指定一个Layout,可以决定log信息以何种格式来输出,比如是否有带有时间戳, 是否包含文件位置信息等,以及他们在一条log信息中的输出格式的等。
Category, Appender, Layout三者之间的关系,一个Category需要为其指定一个appender, 一个appender亦要为其指定一个layout。
另外,对于文件类型输出还有一个rollingpolicy。rollingpolicy用于描述文件输出的配置策略。log4cpp
3.关于配置
配置文件示例如下:
<!DOCTYPE log4c SYSTEM "">
<log4c version="1.2.0">
<config>
<bufsize>0</bufsize>
<debug level="0"/>
<nocleanup>0</nocleanup>
</config>
<layout type="dated_l"/>
<!-- appenders ===================================== -->
<appender type="rollingfile" logdir="../etc/log"
prefix="LoadBusiness-" layout="dated_l"rollingpolicy="Policy1" />
<appender type="rollingfile" logdir="../etc/log/"
prefix="testLog"layout="dated"rollingpolicy="RollingPolicy" />
<!-- category ========================================= -->
<category priority="notice"/>
<category priority="info" appender="FrameLog" />
<category priority="trace" appender="CataRollingFileAppender" />
<!-- policy ======================================= -->
<rollingpolicy type="timewin" timetype="1" maxnum="10" />
<rollingpolicy type="sizewin" maxsize="102400" maxnum="10" />
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-23402-1.html
侦查得好啊
支持