log4qt使用示例


    在使用log4qt的時候,我們常常需要涉及日志分類,按模塊和按級別輸出到不同目的地。本人借花獻佛,將一朋友在論壇中成功記錄在此,方便大伙查閱。

腳本配置

# Libfetion-gui project
# define the root logger with two appenders writing to console and file
 log4j.rootLogger =DEBUG,Console
####outputlog to console#########
#define the appender named CONSOLE
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d{ABSOLUTE} %-5p %x %m%n
 
log4j.logger.A1=DEBUG,CONSOLE,A1
log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A1.File=logs/a1.txt
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%t] [%c] [%p] - %m%n

log4j.logger.A2=DEBUG,CONSOLE,A2 
log4j.appender.A2=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A2.File=logs/a2.txt
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%t] [%c] [%p] - %m%n


log4j.logger.A3=DEBUG,CONSOLE,A3 
log4j.appender.A3=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A3.File=logs/a3.txt
log4j.appender.A3.layout=org.apache.log4j.PatternLayout
log4j.appender.A3.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%t] [%c] [%p] - %m%n

  這里定義了Console、A1、A2、A3共計3個擴展器,可分別輸出到控制台、logs/a1.txt、logs/a2.txt、logs/a3.txt中。

  它們是通過定義不同的logger來做到不同位置和級別定位的。由於logger帶名稱(如A1),也可以為特定重要模塊定義自有的日志。

問題:不知道Console輸出到什么地方去了!?

調用示例

Log4Qt::BasicConfigurator::configure();
Log4Qt::PropertyConfigurator::configure(QCoreApplication::applicationDirPath() + "/log4qt.properties");

Log4Qt::Logger *a1 = Log4Qt::Logger::logger("A1");
al->info("the message of log");//the log save at logs/a1.log 

Log4Qt::Logger *a2 = Log4Qt::Logger::logger("A2");
a2->info("the message of log");//the log save at logs/a2.log 

Log4Qt::Logger *a3 = Log4Qt::Logger::logger("A3");
a3->info("the message of log");//the log save at logs/a3.log 

 

來自:qt log4qt 不同級別日志保存不同日志文件


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM