################################################################ #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; }
参见:
1、基于LGPL开源项目 Log4cpp安装与使用
2、Log4cpp配置文件格式说明(这篇博文写的非常详细!)