1. 程式人生 > >google glog 使用方法

google glog 使用方法

comm example command ini 打印 div fat argv pro

  1. #include <glog/logging.h>
  2. int main(int argc,char* argv[]) {
  3. google::ParseCommandLineFlags(&argc, &argv, true);
  4. // Initialize Google‘s logging library.
  5. google::InitGoogleLogging(argv[0]);
  6. FLAGS_log_dir = "./log";
  7. LOG(INFO) << "hello world";
  8. return 0;
  9. }
g++ -o foo_1 -lglog foo_1.cpp 運行後會在log目錄下生成日誌文件。

FLAGS_log_dir設置日誌輸出目錄。 google::ParseCommandLineFlags(&argc, &argv, true); 使用時,可解析命令行參數。如 foo_1 --log_dir=log

日誌級別
INFO, WARNING, ERROR, FATAL、分別對應數字 0, 1, 2, 3 對應級別的日誌打印在對應級別的日誌文件中。 並且高級別的日誌同時打印在本級別和低級別中。 例如 INFO中會有WARNING級別的輸出。
日誌文件
默認輸出在“/tmp/”目錄下,修改輸出目錄方法:
  • FLAGS_log_dir值修改
  • google::ParseCommandLineFlags(&argc, &argv, true); 使用時,命令行參數log_dir設置。
日誌文件名稱格式:<program name>.<hostname>.<user name>.log.<severity level>.<date>.<time>.<pid> 例如:hello_world.example.com.hamaji.log.INFO.20080709-222411.10474 本文開始處的例子中的 google::InitGoogleLogging(argv[0]); 參數便為設置程序名稱。
初始化參數
FLAGS_log_dir 日誌輸出目錄 FLAGS_v 自定義VLOG(m)時,m值小於此處設置值的語句才有輸出 FLAGS_max_log_size 每個日誌文件最大大小(MB級別) FLAGS_minloglevel 輸出日誌的最小級別,即高於等於該級別的日誌都將輸出。

google glog 使用方法