现在的位置: 首页 > 综合 > 正文

分享一个log4cpp的配置文件

2013年08月31日 ⁄ 综合 ⁄ 共 2312字 ⁄ 字号 评论关闭
################################################################
#1、log4cpp.可以省略
#2、等号左右两侧的名称大小写敏感
#3、rootAppender是随便取的名字
#4、Win32DebugAppender等都是log4cpp类库里的类(class)
#5、日志输出的开启级别(DEBUG,INFO,WARM,ERROR等)必须全部大写
#EMERG  =0,FATAL  = 0,
#ALERT  = 100,CRIT   = 200,
#ERROR  = 300,WARN   = 400,
#NOTICE = 500,INFO   = 600,
#DEBUG  = 700,NOTSET = 800
################################################################

log4cpp.rootCategory=WARN,rootAppender
log4cpp.appender.rootAppender=Win32DebugAppender
log4cpp.appender.rootAppender.layout=PatternLayout
log4cpp.appender.rootAppender.layout.ConversionPattern=%d: %p %c %x: %m%n

本配置文件完成的功能是

1、输出WARN及以上级别的日志(值越小,优先级越高)

2、将日志输出到VS2008的"输出"窗口

3、输出格式是:时间: 优先级 category名称 NDC名称: 消息 换行

################################################################
#1、log4cpp.可以省略
#2、等号左右两侧的名称大小写敏感
#3、rootAppender是随便取的名字
#4、Win32DebugAppender等都是log4cpp类库里的类(class)
#5、日志输出的开启级别(DEBUG,INFO,WARM,ERROR等)必须全部大写
#EMERG  =0,FATAL  = 0,
#ALERT  = 100,CRIT   = 200,
#ERROR  = 300,WARN   = 400,
#NOTICE = 500,INFO   = 600,
#DEBUG  = 700,NOTSET = 800
################################################################

log4cpp.rootCategory=DEBUG,rootAppender
log4cpp.appender.rootAppender=RollingFileAppender
log4cpp.appender.rootAppender.fileName=amp.log
log4cpp.appender.rootAppender.maxFileSize=8388608
log4cpp.appender.rootAppender.maxBackupIndex=10
log4cpp.appender.rootAppender.layout=PatternLayout
log4cpp.appender.rootAppender.layout.ConversionPattern=%d{%Y-%m-%d %H:%M:%S,%l}: %p %c %x: %m%n

本配置文件完成个功能是:

1、输出DEBUG及以上级别的日志(值越小,优先级越高)

2、将日志输出到回滚日志文件中,主文件大小8*1024*1024字节,名字是amp.log,

3、备份文件10个(名字是amp.log.1,amp.log.2,amp.log.3,一直到amp.log.10,每个都是主文件大小+1KB,这是log4cpp规定的)

4、输出格式是:时间: 优先级 category名称 NDC名称: 消息 换行,其中时间是“年-月-日 时:分:秒,毫秒”格式

使用的Cpp文件如下:

#include <iostream>
#include "log4cpp/Category.hh"
#include "log4cpp/PropertyConfigurator.hh"

using namespace std;
int main(int argc, char *argv[]){

	try{
		log4cpp::PropertyConfigurator::configure("./log4cpp.conf");
	}catch(log4cpp::ConfigureFailure& f){
		cout<<f.what()<<endl;
	}

	log4cpp::Category &cat=log4cpp::Category::getInstance("rootAppender");

	cat.info("system is running");
	cat.warn("system has a warning");
	cat.error("system has a error, can't find a file");
	cat.fatal("system has a fatal error,must be shutdown");
	cat.info("system shutdown,you can find some information in system log");

	log4cpp::Category::shutdown();
	
	return 0;
}

需要把配置文件保存到project目录,名字为log4cpp.conf即可~

参见:

1、基于LGPL开源项目 Log4cpp安装与使用

2、Log4cpp配置文件格式说明(这篇博文写的非常详细!)

抱歉!评论已关闭.