安裝
tar -zxvf glog-0.3.3.tar.gz
cd glog-0.3.3
./configure --prefix=/your/install/path
make
make install
vim ~/.bashrc
export library_path=/your/install/path/lib:$library_path
export ld_library_path=/your/install/path/lib:$ld_library_path
source ~/.bashrc
標頭檔案
#include
初始化
google:
:initgooglelogging(argv[0]);//日誌檔案字首
日誌儲存目錄
flags_log_dir = "./log";//命名方法和gflags類似
日誌級別
總共有四種級別:
1. info
2. warning
3. error
4. fatal
分別對應數字:0,1,2,3
對應級別的日誌列印在對應級別的日誌檔案中;
並且高階別的日誌同時列印在本級別和低級別中,例如 info中會有warning級別的輸出。
簡單使用
log(info) <<
"info test"; //輸出乙個info日誌
log(warning) <<
"warning test"; //輸出乙個warning日誌
log(error) <<
"error test"; //輸出乙個error日誌
log(fatal) <<
"fatal test"; //輸出乙個fatal日誌,這是最嚴重的日誌並且輸出之後會中止程式
編譯執行:
g++ test.cpp -o test -i/your/install/path/include -lglog
./test
日誌檔案格式
name>..name>.log.level>...
example: hello_world.example.com.hamaji.log.info.20080709-222411.10474
本文開始處的例子中的 google::initgooglelogging(argv[0]); 引數便為設定程式名稱。
關閉庫
google:
:shutdowngooglelogging();//程式完結時必須有,否則會記憶體洩露
幾個函式
google:
:setstderrlogging(google:
:glog_warning);//大於指定級別的日誌都輸出到標準錯誤(包括自己)
google:
:setlogdestination(google:
:glog_info, "log/prefix_");//設定特定嚴重級別的日誌的輸出目錄和字首。第乙個引數為日誌級別,第二個引數表示輸出目錄及日誌檔名字首
google:
:setlogfilenameextension("logextension");//在日誌檔名中級別後新增乙個副檔名。適用於所有嚴重級別
幾個引數設定
flags_logtostderr = true; //設定日誌訊息是否轉到標準輸出而不是日誌檔案
flags_alsologtostderr = true; //設定日誌訊息除了日誌檔案之外是否去標準輸出
flags_colorlogtostderr = true; //設定記錄到標準輸出的顏色訊息(如果終端支援)
//一般是從error才有顏色,如果info有顏色可以新增:flags_stderrthreshold=google::info;
flags_log_prefix = true; //設定日誌字首是否應該新增到每行輸出
flags_logbufsecs = 0; //設定可以緩衝日誌的最大秒數,0指實時輸出
flags_max_log_size = 10; //設定最大日誌檔案大小(以mb為單位)
flags_stop_logging_if_full_disk = true; //設定是否在磁碟已滿時避免日誌記錄到磁碟
常用格式
log_if(info,a>10)<<"if a>10 will print this log"
;check(a>10)<<"if a<=10 will print this log(fatal), the program will break"
;check_eq(a,10)<<"if a!=10 will print this log(fatal),the program will break"
;check_ne(a,10)
check_le(a,10)
check_lt(a,10)
check_ge(a,10)
check_gt(a,10)
Glog 使用簡介
編譯 cmake編譯需要使用3.0以上版本,編譯成功之後會生成libglog.a庫,使用的時候包含標頭檔案 include就可以了 使用簡介 glog通過google initgooglelogging flkcdp 進行初始化。glog生成的日誌檔名稱類似於下面 flkcdp.ubuntu.roo...
GLog使用筆記
環境 xpsp3 vs2005 glog 0.3.3 編譯 glog 0.3.3裡面有vs2008的sln,vs2005可以直接修改sln和vcproj降版本.開啟sln直接編譯就行了,沒懸念.編譯後生成 libglog.dll libglog.lib libglog static.lib.標頭檔案...
Go標準庫glog使用詳解
golang glog 是 c 版本 google glog 的 go 版本實現,基本實現了原生 glog 的日誌格式。在 kuberntes 中,glog 是預設日誌庫。目錄 glog 的通用功能 glog的 vmodule 功能 glog的 tracelocation 功能 glog的日誌格式 ...