################################################################
#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即可~
参见:
2、Log4cpp配置文件格式说明(这篇博文写的非常详细!)
本文档介绍了如何配置log4cpp,实现WARN及以上级别日志输出到VS2008输出窗口,以及DEBUG及以上级别日志记录到回滚日志文件,包括主文件限制、备份策略及详细输出格式。同时也提供了相关开源项目和配置文件格式说明的参考资料。

895

被折叠的 条评论
为什么被折叠?



