精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

一篇學會使用 QSettings 配置 Log4Qt

開發 前端
通過 QCoreApplication::setOrganizationName() 和 QCoreApplication::setApplicationName() 指定,并且這些名稱需要能被 QSettings 找到。

[[402399]]

本文轉載自微信公眾號「高效程序員」,作者Waleon。轉載本文請聯系高效程序員公眾號。

在 Log4Qt 的初始化過程中,除了會使用環境變量之外,它還會通過 QSettings 讀取配置。也就是說,在使用 Logger 之前,需要針對 QSettings 做一些基本設置:

  • 組織名和應用名:通過 QCoreApplication::setOrganizationName() 和 QCoreApplication::setApplicationName() 指定,并且這些名稱需要能被 QSettings 找到。
  • 分組:需要有一個名為 Log4Qt 的分組,在這個組下面還要有一個子組 Properties。
  • 配置內容:需要符合 Log4Qt 配置語法規則。

在 Windows 中,可以在注冊表中添加相應的配置。例如,路徑:計算機\HKEY_CURRENT_USER\SOFTWARE\MyOrganisation\MyApplication\Log4Qt\Properties:

當然,手動添加比較麻煩。有一個簡單的辦法,就是下面所說的用程序設置 - setupLog4Qt()。

1使用 QSettings 配置

為了實現這個功能,可以自定義 QCoreApplication:

  1. #ifndef MY_APPLICATION_H 
  2. #define MY_APPLICATION_H 
  3.  
  4. #include <QCoreApplication> 
  5.  
  6. class MyApplication : public QCoreApplication 
  7.     Q_OBJECT 
  8.  
  9. public
  10.     MyApplication(int &argc, char **argv); 
  11.     ~MyApplication(); 
  12.  
  13.     void setupLog4Qt(); 
  14. }; 
  15.  
  16. #endif // MY_APPLICATION_H 

在構造函數中,為應用程序設置一些基本信息 - OrganizationName、ApplicationName 以及 OrganizationDomain,以允許 QSettings 能正確的進行讀寫。

在 setupLog4Qt() 中,我們創建了一個組“Log4Qt/Properties”,并且對 rootLogger 進行了一些簡單的配置:

  1. #include "my_application.h" 
  2. #include <log4qt/logger.h> 
  3. #include <QSettings> 
  4.  
  5. MyApplication::MyApplication(int &argc, char **argv) 
  6.     : QCoreApplication(argc, argv) 
  7.     // 設置應用程序數據,以允許 Log4Qt 初始化讀取正確的值 
  8.     setOrganizationName("MyOrganisation"); 
  9.     setApplicationName("MyApplication"); 
  10.     setOrganizationDomain("https://github.com/Waleon"); 
  11.  
  12. MyApplication::~MyApplication() 
  13.  
  14. void MyApplication::setupLog4Qt() 
  15.     QSettings s; 
  16.  
  17.     QStringList groups = s.childGroups(); 
  18.     if (!groups.contains("Log4Qt")) { 
  19.         // 將 Log4Qt 的日志級別設置為 INFO 
  20.         s.beginGroup("Log4Qt"); 
  21.         s.setValue("Debug""INFO"); 
  22.  
  23.         // 配置日志輸出至文件 logger.log,使用級別 INFO 
  24.         s.beginGroup("Properties"); 
  25.         s.setValue("log4j.rootLogger""INFO, logFile"); 
  26.         s.setValue("log4j.appender.logFile""org.apache.log4j.FileAppender"); 
  27.         s.setValue("log4j.appender.logFile.file""logger.log"); 
  28.         s.setValue("log4j.appender.logFile.layout""org.apache.log4j.TTCCLayout"); 
  29.         s.setValue("log4j.appender.logFile.layout.dateFormat""ISO8601"); 
  30.     } 

這樣一來,通過調用 setupLog4Qt() 就能夠設置 Log4Qt 的配置信息了:

  1. #include <QCoreApplication> 
  2. #include <log4qt/logger.h> 
  3. #include "my_application.h" 
  4.  
  5. int main(int argc, char *argv[]) 
  6.     MyApplication app(argc, argv); 
  7.  
  8.     // 設置配置信息 
  9.     app.setupLog4Qt(); 
  10.  
  11.     // 現在,可以使用 logger 了。 
  12.     Log4Qt::Logger* logger = Log4Qt::Logger::rootLogger(); 
  13.  
  14.     logger->trace("This is a trace message."); 
  15.     logger->debug("This is a debug message."); 
  16.     logger->info("This is a info message."); 
  17.     logger->warn("This is a warn message."); 
  18.     logger->error("This is a error message."); 
  19.     logger->fatal("This is a fatal message."); 
  20.  
  21.     return 0; 

為了更好地說明效果,我們分以下幾步進行:

在運行程序之前,打開注冊表,這時并不會有 Log4Qt 相關的配置。

第一次運行程序之后,重新打開注冊表(或者按 F5 刷新),你會發現 Log4Qt 所需的配置已經生成了,并且會輸出日志。

刪除或者注釋掉 setupLog4Qt() 部分(注冊表中的配置已經有了,不需要再次設置了),再次運行程序,依然會輸出日志。

根據配置,在運行程序時,會生成一個名為 logger.log 的日志文件:

 

可以看到,它里面包含了所有的日志記錄。

 

責任編輯:武曉燕 來源: 高效程序員
相關推薦

2021-12-28 07:20:43

Hippo WebAssembly云原生

2021-07-26 05:07:23

Swift萬花尺代碼

2022-01-02 08:43:46

Python

2022-10-20 07:39:26

2022-02-21 08:48:00

Pulsar部署配置

2022-02-07 11:01:23

ZooKeeper

2022-01-12 07:36:01

Java數據ByteBuffer

2021-07-06 08:59:18

抽象工廠模式

2021-05-11 08:54:59

建造者模式設計

2023-11-28 08:29:31

Rust內存布局

2023-01-03 08:31:54

Spring讀取器配置

2022-08-23 08:00:59

磁盤性能網絡

2021-07-02 09:45:29

MySQL InnoDB數據

2021-07-05 22:11:38

MySQL體系架構

2022-08-26 09:29:01

Kubernetes策略Master

2023-11-29 13:59:00

trait定義接口

2022-01-01 20:02:25

Metadata動態元數據

2022-04-12 08:30:52

回調函數代碼調試

2021-07-16 22:43:10

Go并發Golang

2023-03-13 21:38:08

TCP數據IP地址
點贊
收藏

51CTO技術棧公眾號

久久精品.com| 欧美日韩一区二区视频在线观看 | 成人免费精品视频| 欧美大片在线免费观看| 国产精品手机在线观看| 日本久久免费| 亚洲日本一区二区| 好看的日韩精品| 一区二区自拍偷拍| 国内精品久久久久久久影视蜜臀| 亚洲精品ady| 五月天av在线播放| 国产白丝在线观看| 中日韩免费视频中文字幕| 产国精品偷在线| 中文字幕手机在线视频| 女人天堂亚洲aⅴ在线观看| 国产视频久久久久| 乳色吐息在线观看| 外国电影一区二区| 欧美日韩免费网站| youjizz.com亚洲| 少妇无码一区二区三区| 狠狠狠色丁香婷婷综合激情| 4438全国成人免费| 免费在线观看亚洲| 97人人精品| 亚洲欧美国产另类| 中文字幕免费高清视频| 欧美另类激情| 欧美优质美女网站| 69堂免费视频| 免费在线观看av电影| 一区在线观看免费| 奇米影视首页 狠狠色丁香婷婷久久综合| av小说天堂网| 久久66热偷产精品| 国产精品美女久久| 久久久久99精品成人片我成大片| 欧美午夜免费影院| 久久天天躁狠狠躁夜夜躁2014 | 99riav国产| 日韩专区欧美专区| 2019最新中文字幕| 国产成人愉拍精品久久| 狠狠爱www人成狠狠爱综合网 | 永久免费未视频| 欧美综合在线视频观看| 日韩精品在线免费观看| 欧美肉大捧一进一出免费视频| 综合成人在线| 欧美成人精品二区三区99精品| 天天操狠狠操夜夜操| 国外成人福利视频| 精品污污网站免费看| 日本新janpanese乱熟| 欧美片第一页| 日本黄色一区二区| 无码人妻精品一区二区三区66| 性欧美18xxxhd| 午夜成人在线视频| 欧美韩国日本在线| 天天免费亚洲黑人免费| 欧美亚洲精品一区| 99sesese| 欧美日韩黄网站| 精品国产伦理网| 国产激情视频网站| 在线成人动漫av| 国产亚洲欧美aaaa| 色偷偷www8888| 欧美在线高清| 国产+人+亚洲| 国产精品suv一区| 日韩精品亚洲专区| 国产日韩欧美综合| www视频在线| www.亚洲激情.com| 欧美日韩成人一区二区三区| 国产高清av在线| 国产精品国模大尺度视频| 在线视频一二三区| 国产高清中文字幕在线| 色拍拍在线精品视频8848| 粉色视频免费看| 亚洲专区**| 亚洲欧洲在线看| 日本精品人妻无码77777| 亚洲精品日韩久久| 国产精品久久久久久久久免费看| 国产精品欧美久久久久天天影视| 国产99一区视频免费| 久久免费99精品久久久久久| 成人免费高清在线播放| 一区二区三区在线观看网站| 欧美日韩黄色一级片| jizz免费一区二区三区| 精品久久人人做人人爱| 免费一级做a爰片久久毛片潮| 午夜国产一区二区| 97**国产露脸精品国产| 一卡二卡三卡在线| caoporm超碰国产精品| 亚洲国产欧美一区二区三区不卡| 91香蕉在线观看| 91福利在线导航| 俄罗斯女人裸体性做爰| 精品九九在线| 午夜精品一区二区三区在线视 | 亚洲mmav| 精品88久久久久88久久久| www久久久久久久| 亚洲午夜精品久久久久久app| 国产精品99久久久久久人| 黄色片一区二区| 亚洲欧洲成人自拍| 成人小视频在线看| 99re8这里有精品热视频8在线| 国产一区二区激情| 日韩免费一级片| 国产麻豆成人精品| 亚洲国产精品www| 中国色在线日|韩| 欧美tk丨vk视频| 在线观看黄网址| 老司机精品视频网站| 国产亚洲情侣一区二区无| 国产不卡在线| 欧美人牲a欧美精品| 干b视频在线观看| 欧美一区=区| 九九九九精品| 丁香花电影在线观看完整版| 欧美一区二区三区婷婷月色| 东方伊人免费在线观看| 男人的天堂亚洲| 精品无人乱码一区二区三区的优势| 国产激情小视频在线| 欧美图区在线视频| 娇妻被老王脔到高潮失禁视频| 国产精品一级| 久久国产欧美精品| √天堂8资源中文在线| 日韩情涩欧美日韩视频| 成人涩涩小片视频日本| 欧美a一区二区| 欧美影视一区二区| 亚洲mmav| 中文字幕在线视频日韩| av片免费观看| 国产日韩av一区二区| 日本三区在线观看| 久久爱www成人| 国产精品国产三级国产aⅴ浪潮 | 日韩亚洲第一页| 一级片视频播放| 椎名由奈av一区二区三区| 天堂av在线8| 亚洲视频电影在线| 成人91视频| free性m.freesex欧美| 日韩精品一二三四区| 免费视频久久久| 国产精品污www在线观看| 天天综合网久久| 亚洲天堂免费| 韩国精品一区二区三区六区色诱| www在线看| 精品夜色国产国偷在线| 97人妻一区二区精品视频| 国产欧美1区2区3区| www.com黄色片| 影音先锋日韩精品| 精品国产一区二区三区免费 | 天天综合国产| 成人欧美一区二区| 正在播放日韩精品| 俺也去精品视频在线观看| 成人av手机在线| 欧美日韩在线影院| 日韩一卡二卡在线观看| 国产成人无遮挡在线视频| 黄色一级在线视频| 国产一区二区精品久| 国产精品视频一区国模私拍| 18av在线视频| 亚洲欧美激情在线视频| 97人妻一区二区精品免费视频 | 中文字幕一区二区三区免费看| 亚洲啪啪综合av一区二区三区| 白嫩情侣偷拍呻吟刺激 | 国产精品亚洲片夜色在线| 成人片在线看| 精品无人区乱码1区2区3区在线| 姑娘第5集在线观看免费好剧| 亚洲精品国产第一综合99久久| 久久人人爽人人人人片| 精品亚洲国产成人av制服丝袜| 日韩 欧美 视频| 成人精品视频| 国产伦精品一区二区三区| 成人国产激情在线| 久久人人爽人人爽人人片av高请| 成年人在线观看网站| 精品欧美乱码久久久久久1区2区 | 黄色漫画在线免费看| 中文字幕少妇一区二区三区| 欧美一区二区黄片| 欧美男男青年gay1069videost| 动漫精品一区一码二码三码四码| 国产精品视频免费| 中文字幕av观看| 国产剧情一区在线| 手机视频在线观看| 亚洲欧美春色| 国产精品一色哟哟| 久久久久久久久久久久久久久久久久| 久久久精彩视频| 综合激情久久| 51国偷自产一区二区三区的来源 | 99久久精品免费看国产四区| 欧美中文字幕精在线不卡| 久久久久久欧美| 91网址在线观看| 久久精品成人动漫| 在线看黄色av| 亚洲人成伊人成综合网久久久| 五月天婷婷视频| 精品奇米国产一区二区三区| 精品国产伦一区二区三| 欧美乱熟臀69xxxxxx| 超碰在线97观看| 色一区在线观看| 国产精品男女视频| 精品日本高清在线播放| 久久久久久久久久久久久久免费看 | 91福利精品视频| 国产又黄又猛又粗又爽| 欧美日韩国产丝袜美女| 国产真实的和子乱拍在线观看| 亚洲综合色成人| 久久黄色免费视频| 亚洲一级电影视频| 免费中文字幕在线观看| 夜夜嗨av一区二区三区四季av| 成人免费毛片xxx| 自拍偷拍欧美激情| 日韩在线一卡二卡| 最近日韩中文字幕| 99久久99久久精品国产| 亚洲欧美日韩久久| 久草网视频在线观看| 亚洲一区二区精品3399| 国产一级中文字幕| 亚洲国产精品久久一线不卡| 国产污片在线观看| 精品欧美一区二区三区| 日韩综合在线观看| 欧美午夜寂寞影院| 国产毛片毛片毛片毛片| 日韩小视频在线观看专区| 亚洲免费国产视频| 亚洲级视频在线观看免费1级| 日中文字幕在线| 一本大道亚洲视频| 成人无遮挡免费网站视频在线观看| 欧美成人免费在线视频| av日韩中文| 国产成人综合一区二区三区| 婷婷久久免费视频| 粉嫩av一区二区三区免费观看 | 日韩精品在线第一页| 日韩av资源| 久久韩国免费视频| 免费不卡av| 日本精品一区二区三区在线播放视频 | 人人九九精品| 中文字幕亚洲欧美日韩在线不卡| 久草免费在线观看| 午夜精品一区二区三区视频免费看| 粉嫩一区二区| 91亚洲国产成人久久精品网站| 国产精品玖玖玖在线资源| 国产丝袜不卡| 日本不卡电影| 91精品国产91久久久久麻豆 主演| 国产精品最新自拍| 日韩av.com| 91香蕉视频污在线| 99热这里只有精品4| 亚洲v中文字幕| 中文字幕视频免费观看| 日韩欧美色综合| 东热在线免费视频| 欧美激情va永久在线播放| 日韩新的三级电影| 亚洲aⅴ男人的天堂在线观看 | 欧美h在线观看| 91精品欧美久久久久久动漫| 天天干视频在线| 久久精品久久久久久| 水蜜桃在线视频| 99精彩视频在线观看免费| 国产91精品对白在线播放| 一本二本三本亚洲码| 日韩av一区二区三区四区| 精品人妻人人做人人爽夜夜爽| 国产欧美日韩视频在线观看| 国产一级av毛片| 欧美丰满少妇xxxxx高潮对白 | japanese色系久久精品| 水蜜桃一区二区| 你懂的国产精品| 色狠狠av一区二区三区| 乐播av一区二区三区| 精品少妇一区| 亚洲精品日韩精品| 国产精品婷婷| 国产xxxx视频| 亚洲另类春色国产| 亚洲一区二区人妻| 亚洲人成网站色ww在线| 3344国产永久在线观看视频| 91久久精品美女| 色婷婷亚洲mv天堂mv在影片| 欧美xxxxx在线视频| 99这里都是精品| 精品在线视频观看| 日韩欧美国产成人一区二区| 欧美性天天影视| 国产美女被下药99| 成人免费在线播放| 国产嫩草在线观看| 国产亚洲制服色| 欧美日韩一级黄色片| 日韩av在线网站| 欧产日产国产精品视频| 国产在线一区二| 亚洲精品社区| 天天插天天射天天干| 精品国产乱码久久久久久婷婷| 男人天堂av网| 992tv成人免费影院| 欧美国产极品| 狠狠爱免费视频| 久久亚洲欧美国产精品乐播| 69视频免费在线观看| 日韩精品极品在线观看| 涩涩视频在线播放| 欧美精品免费观看二区| 久久久久久一区二区| 一级黄色片网址| 欧美日韩一区在线| 国产精品刘玥久久一区| 亚洲精品欧美日韩专区| 欧美久久九九| 欧美在线一级片| 日韩欧美中文在线| www.在线播放| 亚洲精品欧美极品| 亚洲国产91| 性久久久久久久久久| 91九色02白丝porn| 在线观看免费高清完整| 成人午夜激情免费视频| 欧美日韩亚洲一区| 影音先锋人妻啪啪av资源网站| 欧美性猛交99久久久久99按摩| 九色在线免费| 91九色综合久久| 国产综合色产| 一区二区黄色片| 欧美日韩国产乱码电影| 色老头在线观看| 免费看成人av| 狠狠色综合日日| 日本少妇在线观看| 一区二区在线视频播放| 国产一区精品二区| 亚洲自偷自拍熟女另类| 国产精品嫩草99a| 亚洲精品97久久中文字幕| 日韩av电影在线网| 911精品美国片911久久久| 波多野结衣影院| 欧美日韩一区二区三区四区五区| 亚洲综合伊人久久大杳蕉| 免费久久久一本精品久久区| 国产在线精品视频| 性无码专区无码| 久久精品91久久久久久再现| 六月丁香久久丫| 高清av免费看| 精品久久久久久久久国产字幕 | 91色九色蝌蚪| 91在线观看喷潮| 日本精品一区二区三区在线| 一区二区三区午夜探花| av小说在线观看| 精品久久久久久久久久久院品网|