更詳細的總結請看:
glog基礎知識精講
常用巨集定義:
#define log_info log(info)
#define log_warning log(warning)
#define log_error log(error)
#define log_fatal log(fatal)
#define log_info_if(condition) log_if(info,condition)
#define log_warning_if(condition) log_if(warning,condition)
#define log_error_if(condition) log_if(error,condition)
#define log_fatal_if(condition) log_if(fatal,condition)
#define log_info_every(freq) log_every_n(info, freq)
#define log_warning_every(freq) log_every_n(warning, freq)
#define log_error_every(freq) log_every_n(error, freq)
#define dlog_info dlog(info)
alsologtostderr(bool,default=false) //是否同時將日誌輸出到檔案和stderr
minloglevel (int, default=google::info) //限制輸出到 stderr 的部分資訊,包括此錯誤級別和更高錯誤級別的日誌資訊
stderrthreshold (int, default=google::error) //除了將日誌輸出到檔案之外,還將此錯誤級別和更高錯誤級別的日誌同時輸出到 stderr,這個只能使用 -stderrthreshold=1 或**中設定,而不能使用環境變數的形式。(這個引數可以替代上面兩個引數)
colorlogtostderr(bool, default=false) //將輸出到 stderr 上的錯誤日誌顯示相應的顏色
log_dir (string, default="") //設定日誌檔案輸出目錄
v (int, default=0) //只有當自定義日誌(vlog)級別值小於此值時,才進行輸出,預設為0(注:自定義日誌的優先順序與glog內建日誌優級相反,值越小優先順序越高)。
#define dlog_warning dlog(warning)
#define log_warning_first_n(times) log_first_n(warning, times)
常見引數及初始值:
logtostderr (bool, default=false) //是否將所有日誌輸出到 stderr,而非檔案
vmodule (string, default="") //分檔案(不包括檔名字尾,支援萬用字元)設定自定義日誌的可輸出級別,如:glog_vmodule=server=2,client=3 表示檔名為server.* 的只輸出小於 2 的日誌,檔名為 client.* 的只輸出小於 3 的日誌。如果同時使用 glog_v 選項,將覆蓋 glog_v 選項。
注:以上引數通過加flags_ 字首來設定。
基本引數配置例項:
google::initgooglelogging(program);
flags_log_dir="path/prefix_"; //設定log檔案儲存路徑及字首
flags_alsologtostderr = true; //設定日誌訊息除了日誌檔案之外是否去標準輸出
// flags_stderrthreshold=google::warning; //warning及以上級別標準輸出
flags_colorlogtostderr = true; //設定記錄到標準輸出的顏色訊息(如果終端支援)
flags_stop_logging_if_full_disk = true; //設定是否在磁碟已滿時避免日誌記錄到磁碟
google::installfailuresignalhandler();
}
常用巨集定義
1 防止乙個標頭檔案被重複包含 ifndef comdef h define comdef h 標頭檔案內容 endif 檔案開頭處 define debug,在 中加除錯 ifdef debug endif 2重新定義一些型別,防止由於各種平台和編譯器的不同,而產生的型別位元組數差異,方便移植。t...
巨集定義及帶引數的巨集定義
include 巨集定義,通常用於定義常量,在 轉換成二進位制檔案時會將 中的巨集名稱替換成值 define 巨集名稱 值 define a 1 帶引數的巨集 fun a,b 為巨集的名稱 a b為巨集的值 帶引數的巨集比函式效率高 define fun a,b a b 為了保證替換結果,最好加入 ...
不帶引數的巨集定義與帶引數的巨集定義
巨集定義是c提供的三種預處理功能的其中一種,這三種預處理包括 巨集定義 檔案包含 條件編譯 1.不帶引數的巨集定義 巨集定義又稱為巨集代換 巨集替換,簡稱 巨集 格式 define 識別符號 字串其中的識別符號就是所謂的符號常量,也稱為 巨集名 預處理 預編譯 工作也叫做巨集展開 將巨集名替換為字串...