C++ Easylogging++日志庫配置使用超詳細講解
Easylogging++
Easylogging++是一個只有單個頭文件的開源跨平臺日志庫,擁有簡單易集成,速度極快,線程安全,高效并可配置可擴展等等優(yōu)點,現(xiàn)在也是我的主力日志庫。
下載Easylogging++
Github地址:https://github.com/amrayn/easyloggingpp
從Githu下載Easylogging++,下載下來只有兩個文件,easylogging++.h
和easylogging++.cc
。
在VS中配置Easylogging++
右鍵項目-屬性-C+±常規(guī)-附加包含項目,添加easylogging++.h
所在目錄
將easylogging++.cc
添加到項目中。
使用Easylogging++
(1) 包含頭文件
// easylogging++ #include "easylogging++.h" #define ELPP_THREAD_SAFE
(2) 初始化Easylogging++
INITIALIZE_EASYLOGGINGPP
(3) 設(shè)置日志輸出配置
static void InitEasyloggingPP() { el::Configurations conf; // 啟用日志 conf.setGlobally(el::ConfigurationType::Enabled, "true"); //設(shè)置日志文件目錄以及文件名 conf.setGlobally(el::ConfigurationType::Filename, "log\\log_%datetime{%Y%M%d %H%m%s}.log"); //設(shè)置日志文件最大文件大小 conf.setGlobally(el::ConfigurationType::MaxLogFileSize, "20971520"); //是否寫入文件 conf.setGlobally(el::ConfigurationType::ToFile, "true"); //是否輸出控制臺 conf.setGlobally(el::ConfigurationType::ToStandardOutput, "true"); //設(shè)置日志輸出格式 conf.setGlobally(el::ConfigurationType::Format, "[%datetime] [%loc] [%level] : %msg"); //設(shè)置日志文件寫入周期,如下每100條刷新到輸出流中 conf.setGlobally(el::ConfigurationType::LogFlushThreshold, "100"); //設(shè)置配置文件 el::Loggers::reconfigureAllLoggers(conf); }
(4) 示例程序
// easylogging++ #include "easylogging++.h" #define ELPP_THREAD_SAFE INITIALIZE_EASYLOGGINGPP static void InitEasyloggingPP() { el::Configurations conf; // 啟用日志 conf.setGlobally(el::ConfigurationType::Enabled, "true"); //設(shè)置日志文件目錄以及文件名 conf.setGlobally(el::ConfigurationType::Filename, "log\\log_%datetime{%Y%M%d %H%m%s}.log"); //設(shè)置日志文件最大文件大小 conf.setGlobally(el::ConfigurationType::MaxLogFileSize, "20971520"); //是否寫入文件 conf.setGlobally(el::ConfigurationType::ToFile, "true"); //是否輸出控制臺 conf.setGlobally(el::ConfigurationType::ToStandardOutput, "true"); //設(shè)置日志輸出格式 conf.setGlobally(el::ConfigurationType::Format, "[%datetime] [%loc] [%level] : %msg"); //設(shè)置日志文件寫入周期,如下每100條刷新到輸出流中 conf.setGlobally(el::ConfigurationType::LogFlushThreshold, "100"); //設(shè)置配置文件 el::Loggers::reconfigureAllLoggers(conf); } int main() { InitEasyloggingPP(); LOG(INFO) << "Hello World"; }
到此這篇關(guān)于C++ Easylogging++配置使用超詳細講解的文章就介紹到這了,更多相關(guān)C++ Easylogging++內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳解C++成員函數(shù)的override和final說明符的用法
這篇文章主要介紹了詳解C++成員函數(shù)的override和final說明符的用法,分別用于重寫和禁止繼承類,要的朋友可以參考下2016-01-01如何使用visual studio2019創(chuàng)建簡單的MFC窗口(使用C++)
這篇文章主要介紹了如何使用visual studio2019創(chuàng)建簡單的MFC窗口(使用C++),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03Qt實現(xiàn)編輯數(shù)據(jù)庫數(shù)據(jù)的方法詳解
這篇文章主要為大家詳細介紹了Qt是如何實現(xiàn)編輯數(shù)據(jù)庫數(shù)據(jù)的,文中的示例代碼簡潔易懂,對我們深入了解QT有一定的幫助,感興趣的小伙伴可以了解一下2023-02-02