glog的使用

現在Mayuyu來介紹一個很有用的工具,即glog。跟gflags一樣,都是google開源的工具,不同的是glog是用來打印日誌的。

 

 

Contents

 

   1. glog安裝步驟

   2. glog使用方法

 

 

1. glog安裝步驟

 

   首先應該下載glog的安裝包,地址如下

 

   鏈接:https://code.google.com/p/google-glog/downloads/list

 

   然後把它解壓,進入目錄後分別執行如下命令

 

   (1)./configure

   (2)make

   (3)make install

 

   .so文件默認安裝路徑是/usr/local/lib,需要將建立軟鏈接,如下

 

  

 

   好了,到了這裏就安裝完畢,可以放心使用了。

 

 

2. glog的使用方法

 

   glog中的日誌分爲4個級別,即INFO,WARNING,ERROR, FATAL、分別對應數字0, 1, 2, 3。


   對應級別的日誌打印在對應級別的日誌文件中。並且高級別的日誌同時打印在本級別和低級別中。例如INFO中

   會有WARNING級別的輸出。

 

   初始化參數

 

   FLAGS_log_dir         日誌輸出目錄
   FLAGS_v               自定義VLOG(m)時,m值小於此處設置值的語句纔有輸出
   FLAGS_max_log_size    每個日誌文件最大大小(MB級別)
   FLAGS_minloglevel     輸出日誌的最小級別,即高於等於該級別的日誌都將輸出。

 

   滿足一定條件下輸出日誌,例如:LOG_IF(INFO, num_cookies > 10) << "Got lots of cookies";

 

   google::InitGoogleLogging("Spider");  // 設置日誌文件名中的"文件名"字段
   google::ShutdownGoogleLogging();      // 停止GLog,與InitGoogleLogging()成對使用,沒

                                            有這句會導致內存泄漏

 

   glog是根據進程ID來區分文件的,如果你重新啓動了程序,則log文件的名字就會變。

 

   不同類別日誌存放路徑設置

   

 

 

代碼:

#include <iostream>
#include <string.h>
#include <stdio.h>

#include <glog/logging.h>

using namespace std;

int main(int argc, char **argv)
{
	google::InitGoogleLogging(argv[0]);
	FLAGS_log_dir = "./log";
	
	LOG(INFO) << "Mayuyu";
	LOG(WARNING) << "Hello";

	google::ShutdownGoogleLogging(); //與google::InitGoogleLogging(argv[0]);成對使用,不然會內存泄漏
	
	return 0;
}



 

供參考資料

 

http://www.cnblogs.com/tianyajuanke/archive/2013/02/22/2921850.html

http://www.cppfans.org/1566.html

http://tudian2007.blog.163.com/blog/static/3156641320139176563617/

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章