日志组件Log4cplus的使用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
#include <log4cplus/logger.h> #include <log4cplus/configurator.h> #include <log4cplus/helpers/loglog.h> using namespace std; using namespace log4cplus; const char* LOG4CPLUS_CONFIG_FILE = "log4cplus.properties"; try { log4cplus::PropertyConfigurator::doConfigure( LOG4CPLUS_CONFIG_FILE ); } catch ( std::runtime_error& e ) { std::cout << "Failed to initialize log4cplus with config file: " << LOG4CPLUS_CONFIG_FILE << " due to: " << e.what() << endl; } Logger logger = Logger::getRoot(); LOG4CPLUS_DEBUG(logger, "Hello " << "World"); |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
log4cplus.rootLogger=DEBUG, Console, File log4cplus.logger.AmqCppClient=DEBUG log4cplus.appender.Console=log4cplus::ConsoleAppender log4cplus.appender.Console.layout=log4cplus::PatternLayout log4cplus.appender.Console.layout.ConversionPattern=[%-5p] [%t] %d (%F:%L) %n%m%n log4cplus.appender.File=log4cplus::RollingFileAppender log4cplus.appender.File.File=F:/Temp/amq-cpp-client.log log4cplus.appender.File.MaxFileSize=5MB log4cplus.appender.File.MaxBackupIndex=5 log4cplus.appender.Console.layout=log4cplus::PatternLayout log4cplus.appender.Console.layout.ConversionPattern=[%-5p] [%t] %d (%F:%L) %n%m%n |
符号 | 说明 |
%% | 转义为% |
%c |
输出logger名称,例如std::string pattern ="%c" 时输出: "cc.gmem", 也可以控制logger名称的显示层次,比如"%c{1}"时输出"gmem", 其中数字表示层次 |
%D | 显示本地时间,当std::string pattern ="%D" 时输出:"2011-11-16 11:00:00" |
%d |
显示标准时间,可以通过%d{...}定义更详细的显示格式,{}中可显示的预定义标识符如下: %a -- 表示礼拜几,英文缩写形式,比如"Fri" |
%F | 输出当前记录器所在的文件名称 |
%L | 输出当前记录器所在的文件行号 |
%l | 输出当前记录器所在的文件名称和行号 |
%m | 输出原始日志信息 |
%n | 换行符 |
%p | 输出LogLevel |
%t | 输出记录器所在的线程ID |
%x | 嵌套诊断上下文NDC |
Leave a Reply