Linux下log4cplus日志工具怎樣進(jìn)行配置
Linux下log4cplus日志工具怎樣進(jìn)行配置
log4cplus是一款優(yōu)秀的基于C/C++的開源日志庫,那么大家知道Linux下log4cplus日志工具怎樣進(jìn)行配置嗎?下面學(xué)習(xí)啦小編就為大家?guī)砹薒inux下配置log4cplus日志工具的方法。
Linux下log4cplus日志工具配置方法
1、log4cplus簡介
log4cplus是C++編寫的開源的日志系統(tǒng),前身是java編寫的log4j系統(tǒng).受Apache Software License保護(hù)。作者是Tad E. Smith。log4cplus具有線程安全、靈活、以及多粒度控制的特點,通過將信息劃分優(yōu)先級使其可以面向程序調(diào)試、運行、測試、和維護(hù)等全生命周期; 你可以選擇將信息輸出到屏幕、文件、NT event log、甚至是遠(yuǎn)程服務(wù)器;通過指定策略對日志進(jìn)行定期備份。
2、log4cplus下載
最新的log4cplus可以從以下網(wǎng)址下載。
log4cplus:http://sourceforge.net/projects/log4cplus/
在RedHat Linux系統(tǒng)下可使用以下命令安裝:
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默認(rèn)安裝后頭文件路徑是/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
#include
#include
#include
#include
#include
#include
#include
#include
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)='
Linux下log4cplus日志工具怎樣進(jìn)行配置
Linux下log4cplus日志工具怎樣進(jìn)行配置
log4cplus是一款優(yōu)秀的基于C/C++的開源日志庫,那么大家知道Linux下log4cplus日志工具怎樣進(jìn)行配置嗎?下面學(xué)習(xí)啦小編就為大家?guī)砹薒inux下配置log4cplus日志工具的方法。
Linux下log4cplus日志工具配置方法
1、log4cplus簡介
log4cplus是C++編寫的開源的日志系統(tǒng),前身是java編寫的log4j系統(tǒng).受Apache Software License保護(hù)。作者是Tad E. Smith。log4cplus具有線程安全、靈活、以及多粒度控制的特點,通過將信息劃分優(yōu)先級使其可以面向程序調(diào)試、運行、測試、和維護(hù)等全生命周期; 你可以選擇將信息輸出到屏幕、文件、NT event log、甚至是遠(yuǎn)程服務(wù)器;通過指定策略對日志進(jìn)行定期備份。
2、log4cplus下載
最新的log4cplus可以從以下網(wǎng)址下載。
log4cplus:http://sourceforge.net/projects/log4cplus/
在RedHat Linux系統(tǒng)下可使用以下命令安裝:
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默認(rèn)安裝后頭文件路徑是/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
#include
#include
#include
#include
#include
#include
#include
#include
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)='
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
Linux下log4cplus日志工具怎樣進(jìn)行配置相關(guān)文章: