1。glog安装使用:C++第三方日志库Glog的安装与使用超详解_wendy_ya的博客-优快云博客_glog 下载
2。glog使用
glog使用教程_HelenXR的博客-优快云博客_glog使用
3。常用FLAGS
你还可以通过在程序中修改全局变量FLAGS_*来配置.这些FLAG_*标识,你可以在”glog\logging.h”文件中查阅.
FLAGS_stderrthreshold = google::INFO; FLAGS_colorlogtostderr = true; // Set log color FLAGS_logbufsecs = 0; // Set log output speed(s) FLAGS_max_log_size = 1024; // Set max log file size FLAGS_stop_logging_if_full_disk = true; // If disk is full
这里说一下比较常用的一个标志:FLAGS_log_dir,这个标志用来指定日志保存的路径,需要在”InitGoogleLogging”执行之前修改,代码修改:
FLAGS_log_dir=logDir;//在InitGoogleLogging()前设置,注意与SetLogDestination统一位置,否则SetLogDestination会覆盖该设置,默认在应用程序所在目录
google::SetLogDestination(google::GLOG_INFO, logDir.c_str());//设置 google::INFO 级别日志文件名前缀,如果要设置文件名前缀,则全路径logDir+\\+prefix,不用再设置FLAGS_log_dir
//注意指定的路径,必须手动存在,你可以在运行前先创建好,否则生成不了日志文件,路径'\'要转义.
FLAGS_log_dir = "D:\\helenxr_glog_log_dir";
//programe name:"HelenXR_glog_program"
google::InitGoogleLogging("HelenXR_glog_program");
LOG(INFO) << "google log first info level message!";
LOG(WARNING) << "google log first warning level message!";
LOG(ERROR) << "google log first error level message!";
4。Verbose:
glog提供VLOG宏来提供自定义打印等级的功能.
//verbose logging test
//你可以通过命令行"--v=n",来控制VLOG的输出,VLOG(x),x<=n的情况,VLOG会输出,否则不输出.v默认为0,所以默认情况下VLOG(-1),VLOG(0)能够输出.
VLOG(-1) << "VLOG(-1) message.";
VLOG(0) << "VLOG(0) message.";
VLOG(1) << "VLOG(1) message.";
VLOG(2) << "VLOG(2) message.";
VLOG(3) << "VLOG(3) message.";
5。CHECK 宏
当通过该宏指定的条件不成立的时候,程序会中止,并且记录对应的日志信息。功能类似于ASSERT,区别是 CHECK 宏不受 NDEBUG 约束,在 release 版中同样有效。