需要的头文件:
#include <log4cplus/logger.h>
#include <log4cplus/fileappender.h>
#include <log4cplus/configurator.h>
#include <log4cplus/loggingmacros.h>
加载配置并初始化:
//加载配置文件
log4cplus::PropertyConfigurator::doConfigure(LOG4CPLUS_TEXT("./log4cplus.properties"));
//设置日志级别
log4cplus::Logger::getRoot().setLogLevel(log4cplus::ALL_LOG_LEVEL);
//初始化logger
log4cplus::Logger LOG = log4cplus::Logger::getInstance(LOG4CPLUS_TEXT("FILE"));
记录:
LOG4CPLUS_TRACE(m_Logger, "index:" << index );
配置文件: log4cplus.properties
# Define the root logger
log4cplus.rootLogger=STDOUT, FILE, CONSOLE
log4cplus.appender.CONSOLE=log4cplus::ConsoleAppender
log4cplus.appender.CONSOLE.layout=log4cplus::PatternLayout
log4cplus.appender.CONSOLE.layout.ConversionPattern=%p %D{%m/%d/%y %H:%M:%S} - %m [%l]%n
log4cplus.appender.STDOUT=log4cplus::ConsoleAppender
log4cplus.appender.STDOUT.layout=log4cplus::TTCCLayout
log4cplus.appender.FILE=log4cplus::DailyRollingFileAppender
log4cplus.appender.FILE.Schedule=DAILY
log4cplus.appender.FILE.DatePattern = yyyy-MM-dd
log4cplus.appender.FILE.File=./log/net_log
log4cplus.appender.FILE.MaxFileSize=100MB
log4cplus.appender.FILE.MaxBackupIndex=100
log4cplus.appender.FILE.layout=log4cplus::PatternLayout
log4cplus.appender.FILE.layout.ConversionPattern=%p %D{%Y-%m-%d %H:%M:%S.%q} %m -%F:%L%n