首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

google_Glog运用(linux)

2012-07-28 
google_Glog使用(linux)第二篇日志,居然还是google的 google-glog,顾名思义,google提供的日志库,刚开始使

google_Glog使用(linux)

第二篇日志,居然还是google的 google-glog,顾名思义,google提供的日志库,刚开始使用,心得体会暂时没有,先看看如何使用吧安装:step1:下载地址:http://code.google.com/p/google-glog/downloads/detail?name=glog-0.3.1-1.tar.gzstep2:解压,configure,make,make installstep3:demo.c------------------------------------------------------------#include <glog/logging.h>int main(int argc, char* argv[])?{?? ?//Initialize Google's logging library.?? ?google::InitGoogleLogging(argv[0]);?? ?int num_cookies = 10;?? ?LOG(INFO) << "Found " << num_cookies << " cookies";?? ?return 0;}------------------------------------------------------------step4:编译 g++ demo.cpp -L ../glog-0.3.1/lib -lglog -o demo.exestep5:运行 ./demo.exe?
输出解析?默认输出日志在 /tmp下 格式为"/tmp/<program name>.<hostname>.<user name>.log.<severity level>.<date>.<time>.<pid>"比如,本人的机器运行结果如下:>:/data6/peterguo/glog/demo> l /tmp/demo.exe*?-rw-r--r-- 1 sosotest users 207 2011-03-24 16:54 /tmp/demo.exe.JingKai_10_161_29_146.sosotest.log.INFO.20110324-165411.10016>:/data6/peterguo/glog/demo>cat /tmp/demo.exe.JingKai_10_161_29_146.sosotest.log.INFO.20110324-165411.10016Log file created at: 2011/03/24 16:54:11 【日志产生时间】Running on machine: JingKai_10_161_29_146 【日志的其他信息】Log line format: [IWEF]mmdd hh:mm:ss.uuuuuu threadid file:line] msg 【日志格式】I0324 16:54:11.589886 10016 demo.cpp:8] Found 10 cookies ? ? ? 【这里就是日志打印的结果了】
若不希望产生日志文件,也可以通过环境变量把输出直接定向到终端,详情见?参考glog文档GLOG_logtostderr=1 ./demo.exe??glog路径设置路径:使用log必然要涉及到log路径,这些在手册里介绍的不是很清楚,可以查看源码/usr/local/include/glog/logging.h 函数:SetLogDestination(LogSeverity severity, const char* base_filename);例如---------------------------------------------------

google::SetLogDestination(google::INFO,"./myInfo_");? //高于INFO级别的,记录在当前目录并以myInfo_为前缀的日志

google::SetLogDestination(google::ERROR,"");?????????? //如果前缀为空,则不建立ERROR级别的日志

?

?google::SetStderrLogging(google::INFO);???????????????????//配置输出到标准错误输出的最低日记级别

?google::LogToStderr();??????????????????????????????????????????????? //只输出到标准错误输出

另外,配合gflag的话,代码中如果设置有以FLAGS_ 开头的变量,使用?GLOG_ 开头的环境变量进行设置,如

?

?

FLAGS_log_dir = "./";??与设置环境 GLOG_log_dir = "./"? 具有相同的作用,且程序中的设置优先级高

---------------------------------------------------

更多内容见http://code.google.com/p/google-glog/


热点排行