C++第三方库

目录

google glog详解

安装

基础用法


google glog详解

glog是google的日志管理系统,配合gflags库,通过命令行参数管理日志。

安装

源码下载:https://github.com/google/glog
ubuntu安装:

sudo apt-get install libgoogle-glog*

参考博客:
https://blog.csdn.net/jcjc918/article/details/51682853
https://www.cnblogs.com/hiloves/p/6009707.html

基础用法

头文件:

#include <glog/logging.h>

四个打印级别:

LOG(INFO) 	<< "<INFO> Hello World!";
LOG(WARNING) << "<WARNING> Hello World!";
LOG(ERROR) 	<< "<ERROR>Hello World!";
LOG(FATAL) 	<< "<FATAL>Hello World!"; 

其他用法:

## 简单的输出日志
LOG(INFO) << "message";

## 按条件输出日志
LOG_IF(INFO, a > 0) << "message";

## CHECK 类 宏,检查某个条件是否成立,如果不成立,输出信息后将退出
## 注意这和 assert 不同,assert 只在 debug 模式下存在
## 检测结果是否为 true
CHECK(a > 0) << "message";

## 检测两个值是否相等
CHECK_EQ(a, b) << "message";

## 坚持两个值是否不相等
CHECK_NE(a, b) << "message";

## 检测是否为空指针,将返回该指针
CHECK_NOTNULL(p);

## 打印系统错误
PLOG();
PLOG_IF();
PCHECK();

例子:

使用glog之前必须先初始化库,要生成日志文件只需在开始log之前调用一次:

google::InitGoogleLogging(argv[0]);  //括号内是程序名

当要结束glog时必须关闭库,否则会内存溢出:

google::ShutdownGoogleLogging();

设置日志文件保存目录,这个目录必须是已经存在的,否则不能生成日志文件。必须在初始化库之前调用。

FLAGS_log_dir = "c:\\Logs";
google::SetLogDestination(google::GLOG_INFO, "log/prefix_");  //设置特定严重级别的日志的输出目录和前缀。第一个参数为日志级别,第二个参数表示输出目录及日志文件名前缀
google::SetLogFilenameExtension("logExtension");  //在日志文件名中级别后添加一个扩展名。适用于所有严重级别
google::SetStderrLogging(google::GLOG_INFO);  //大于指定级别的日志都输出到标准输出
// Start google log system:
FLAGS_log_dir = "c:\\Logs";
google::InitGoogleLogging(argv[0]);
google::SetLogDestination(google::GLOG_INFO, "c:\\Logs\\INFO_");
google::SetStderrLogging(google::GLOG_INFO);
google::SetLogFilenameExtension("log_");
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
char str[20] = "hello log!";
LOG(INFO) << str;CStringA cStr = "hello google!";LOG(INFO) << cStr;
LOG(INFO) << "info test" << "hello log!";  //输出一个Info日志
LOG(WARNING) << "warning test";  //输出一个Warning日志
LOG(ERROR) << "error test";  //输出一个Error日志
google::ShutdownGoogleLogging();

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值