CentOS-7.0x64 log4cxx-0.10.0
安装包下载
apr和apr-util:http://apr.apache.org/
log4cxx:http://logging.apache.org/log4cxx/latest_stable/download.html
#安装apr
$ tar -zxvf apr-1.5.2.tar.gz
$ cd apr-1.5.2
$ ./configure --prefix=/usr/local
$ make
$ sudo make install
#安装apr-util
$ tar -zxvf apr-util-1.5.4.tar.gz
$ cd apr-util-1.5.4
$ ./configure --prefix=/usr/local --with-apr=/usr/local
$ make
$ sudo make install
#安装log4cxx
$ tar -zxvf apache-log4cxx-0.10.0.tar.gz
$ cd apache-log4cxx-0.10.0
$ ./configuer --prefix=/usr/local/ --with-apr=/usr/local/ --with-apr-util=/usr/local/ --with-charset=utf-8 --with-logchar=utf-8
$ make
$ sudo make install
log4cxx.properties配置文件
######################################################
#设置日志level
log4j.rootLogger=INFO,commAppend
#设置日志对象
log4j.logger.console=INFO,consoleAppend
log4j.logger.common=DEBUG,commAppend
log4j.logger.server=DEBUG,serverAppend
log4j.logger.client=DEBUG,clientAppend
#不向默认对象(rootLogger)输出,因此信息只能输出到文件
log4j.additivity.console=false
log4j.additivity.common=false
log4j.additivity.server=false
log4j.additivity.client=false
#控制台,同时也会输出到默认输出对
log4j.appender.consoleAppend=org.apache.log4j.ConsoleAppender
log4j.appender.consoleAppend.layout=org.apache.log4j.PatternLayout
log4j.appender.consoleAppend.layout.ConversionPattern=%d|%-5p|%t|%F:%L|%m%n
#设置日志文件信息,比如大小,时间格式
log4j.appender.commAppend=org.apache.log4j.RollingFileAppender
log4j.appender.commAppend.File=./log/common.log
log4j.appender.commAppend.MaxFileSize=10MB
log4j.appender.commAppend.MaxBackupIndex=1000
log4j.appender.commAppend.layout=org.apache.log4j.PatternLayout
log4j.appender.commAppend.layout.ConversionPattern=%d|%-5p|%c|%F:%L|%m%n
log4j.appender.serverAppend=org.apache.log4j.DailyRollingFileAppender
log4j.appender.serverAppend.File=./log/server.log
#Append=true为覆盖输出
log4j.appender.serverAppend.Append=fasle
log4j.appender.serverAppend.MaxFileSize=10MB
log4j.appender.serverAppend.MaxBackupIndex=1000
log4j.appender.serverAppend.DatePattern=yyyy-MM-dd
log4j.appender.serverAppend.layout=org.apache.log4j.PatternLayout
log4j.appender.serverAppend.layout.ConversionPattern=%d|%-5p|%t|%20.20F|%5.5L|%m%n
log4j.appender.clientAppend=org.apache.log4j.DailyRollingFileAppender
log4j.appender.clientAppend.File=./log/client.log
log4j.appender.clientAppend.Append=fasle
log4j.appender.clientAppend.MaxFileSize=10MB
log4j.appender.clientAppend.MaxBackupIndex=1000
log4j.appender.clientAppend.DatePattern=yyyy-MM-dd
log4j.appender.clientAppend.layout=org.apache.log4j.PatternLayout
log4j.appender.clientAppend.layout.ConversionPattern=%d|%-5p|%t|%20.20l|%m%n
######################################################
#使用
#入口函数加载配置文件
log4cxx::PropertyConfigurator::configure(./log4cxx.properties);
#写日志
LoggerPtr logger = Logger::getLogger("common");
logger->info(("test1"));
LOG4CXX_INFO(logger, ("test2"));
#编译
g++ -std=c++11 -g test.cpp -o test -llog4cxx