您好,登錄后才能下訂單哦!
?當(dāng)前使用的版本 log4cplus-1.2.1-rc2
? ? ? ? staticbool bFirst = true;
???????? Logger_logger = Logger::getInstance(LOG4CPLUS_TEXT("thriftserver"));
???????? if(bFirst)
???????? {
?????????????????? SharedAppenderPtr_append(new RollingFileAppender(LOG4CPLUS_TEXT("thriftserver.log"),300 * 1024, 20));
?????????????????? auto_ptr<Layout>pPatternLayout(new PatternLayout("%D- %m [%l]%n"));
?????????????????? _append->setLayout(pPatternLayout);
?????????????????? _append->setName(LOG4CPLUS_TEXT("thriftserver"));
?????????????????? _logger.addAppender(_append);
?????????????????? bFirst= false;
???????? }
??????? return _logger;
?
auto_ptr<Layout> pPatternLayout(newPatternLayout("%d- %m [%l]%n"));
顯示的是格林威治的時(shí)間
auto_ptr<Layout> pPatternLayout(newPatternLayout("%D- %m [%l]%n"));
顯示的是本地的時(shí)間
auto_ptr<Layout> pPatternLayout(new PatternLayout("%D{%Y-%m-%d %H:%M:%S.%q}- %m [%l]%n"));
顯示的是本地時(shí)間,并且精確到毫秒
#include <log4cplus/loggingmacros.h>
#include <log4cplus/logger.h>
#include <log4cplus/fileappender.h>
?
#define LOGGERTAGLogger::getInstance(LOG4CPLUS_TEXT("thriftserver"))
?
log4cplus::LoggerStartSetupThrfitServerLog();
//在程序運(yùn)行的時(shí)候創(chuàng)建日志文件,調(diào)用該函數(shù)
log4cplus::Logger StartSetupThrfitServerLog()
{
???????? staticbool bFirst = true;
???????? Logger_logger = Logger::getInstance(LOG4CPLUS_TEXT("thriftserver"));
???????? if(bFirst)
???????? {
?????????????????? SharedAppenderPtr_append(new RollingFileAppender(LOG4CPLUS_TEXT("thriftserver.log"),300 * 1024, 20));
?????????????????? auto_ptr<Layout>pPatternLayout(new PatternLayout("%D- %m [%l]%n"));
?????????????????? _append->setLayout(pPatternLayout);
?????????????????? _append->setName(LOG4CPLUS_TEXT("thriftserver"));
?????????????????? _logger.addAppender(_append);
?????????????????? bFirst= false;
???????? }
??????? return _logger;
}
?
//寫日志
LOG4CPLUS_ERROR(LOGGERTAG, "can notconnect remote host,ip:”<< ip);
?
?
log4cpp編譯安裝的路徑是/opt/log4cpp
?
問(wèn)題:如何正確引入動(dòng)態(tài)庫(kù)
1.修改/etc/ld.so.conf文件,將/opt/log4cpp/lib添加到文件末尾,該文件主要被ldconfig指令用來(lái)搜索可共享的動(dòng)態(tài)鏈接庫(kù)
2.執(zhí)行ldconfig,根據(jù)修改的文件內(nèi)容,創(chuàng)建出動(dòng)態(tài)裝入程序所需的連接和緩存文件,提供給系統(tǒng)動(dòng)態(tài)庫(kù)調(diào)用
手動(dòng):
???g++ test.cpp -I/opt/log4cpp/include -L/opt/log4cpp/lib/ -llog4cpp-lpthread -o test
?
提示
test.cpp文件并沒(méi)有依賴多線程庫(kù),但是log4cpp庫(kù)依賴,所以必須在命令中指定,并且由于庫(kù)的依賴次序:前面的庫(kù)依賴后面的庫(kù),所以在log4cpp后面添加lpthread庫(kù)。如果不知道需要添加哪些庫(kù)依賴,可以參考/opt/log4cpp/bin/log4cp-config文件--libs --cflags輸出,如下提供了如何在編譯指令中添加log4cp-config的
例子:
g++ test.cpp`/opt/log4cpp/bin/log4cpp-config --libs --cflags` -o maintest
修訂?
2019/8/23 日志精確顯示毫秒
?
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。