Linux下log4cplus日志工具配置、安装、测试

log4cplus是C++编写的开源的日志系统,功能非常全面,初次使用log4plus,下面介绍自己在Linux下学习log4cplus过程中的配置、安装和测试过程。

1、log4cplus简介

log4cplus是C++编写的开源的日志系统,前身是java编写的log4j系统.受Apache Software License保护。作者是Tad E. Smith。log4cplus具有线程安全、灵活、以及多粒度控制的特点,通过将信息划分优先级使其可以面向程序调试、运行、测试、和维护等全生命周期; 你可以选择将信息输出到屏幕、文件、NT event log、甚至是远程服务器;通过指定策略对日志进行定期备份。

2、log4cplus下载

最新的log4cplus可以从以下网址下载。

log4cplus:http://sourceforge.net/projects/log4cplus/

在RedHat Linux系统下可使用以下命令安装:

wget http://sourceforeg.net/projects/log4cplus/files/log4cplus-stable/1.1.2/log4cplus-x.x.x.tar.gz

3、log4cplus安装

tar xvzf log4cplus-x.x.x.tar.gz

cd log4cplus-x.x.x

./configure

make

make install

4、log4cplus配置

log4cplus默认安装后头文件路径是/usr/local/include/log4cplus,库文件的安装文件路劲是/usr/local/lib,编辑.bash_profile文件添加库文件。

$ vi ~/.bash_profile

添加:

LD_LIBRARY_PATH=LD_LIBRARY_PATH:/usr/local/lib

export LD_LIBRARY_PATH

添加完后source ~/.bash_profile使改变生效

$ vi /etc/profile

添加:

CPLUS_INCLUDE_PATH=LD_LIBRARY_PATH:/usr/local/lib

export CPLUS_INCLUDE_PATH

添加完后source ~/.bash_profile使改变生效

5、测试

#include <log4cplus/logger.h>#include <log4cplus/configurator.h>#include <iomanip>#include <log4cplus/logger.h>#include <log4cplus/fileappender.h>#include <log4cplus/consoleappender.h>

#include <log4cplus/loggingmacros.h>#include <log4cplus/layout.h>#include <time.h>using namespace std;using namespace log4cplus;Logger pTestLogger;

void writelog(char* leval,char* info){struct tm *p;time_t lt=time(NULL);p=localtime(<);char* timetemp=ctime(<);*(timetemp+strlen(timetemp)-1)=’\0′;char temp[10000];sprintf(temp,”[%s] %s”,timetemp,info); printf(“temp==%s”,temp);printf(“leval====%s\n”,leval);if(memcmp(leval,”TRACE”,5)==0)printf(“%d===%d”,memcmp(“TRACE”,”TRAC1E”,5),memcmp(leval,”TRACE”,5));LOG4CPLUS_TRACE(pTestLogger,temp);if(memcmp(leval,”DEBUG”,5)==0)LOG4CPLUS_DEBUG(pTestLogger,temp);if(memcmp(leval,”INFO”,4)==0)LOG4CPLUS_INFO(pTestLogger,temp);if(memcmp(leval,”WARN”,4)==0)LOG4CPLUS_WARN(pTestLogger,temp);if(memcmp(leval,”ERROR”,5)==0)LOG4CPLUS_ERROR(pTestLogger,temp);if(memcmp(leval,”FATAL”,5)==0)LOG4CPLUS_FATAL(pTestLogger,temp);}int main(){char* info=”you have a iuns”;char filename[50];struct tm *p;time_t lt=time(NULL);p=localtime(<);sprintf(filename,”%d-%d-%d.txt”,(1900+p->tm_year), (1+p->tm_mon),p->tm_mday);FILE* stream=fopen(filename,”wb”);SharedAppenderPtr pFileAppender(new FileAppender((filename)));pTestLogger = Logger::getInstance((“LoggerName”));pTestLogger.addAppender(pFileAppender);writelog(“TRACE”,info);writelog(“DEBUG”,info);writelog(“ERROR”,info); return 0;}

编译命令

g++ filetime.cpp -I /usr/local/log4cplus/include/ -L /usr/local/log4cplus/lib -llog4cplus -o filetime

log4cplus 的详细介绍:请点这里log4cplus 的下载地址:请点这里

每年的同一天和他庆祝生日,每年的情人节、圣诞节、除夕,

Linux下log4cplus日志工具配置、安装、测试

相关文章:

你感兴趣的文章:

标签云: