Linux glog 0.33版本的简单使用

本文档记录了如何在工作中使用开源日志库glog的0.33版本来记录设备运行信息。首先从github下载并解压glog源码,然后通过配置和make命令生成库文件。接着将库文件和头文件放入测试代码目录,编写并编译测试代码glog.cpp,最后成功执行并观察到日志输出到标准控制台和指定文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近工作中需要使用日志库记录设备的运行信息,本着不重复造轮子的原则,选择开源的glog日志库;但是在使用最新的glog库时,发现一些编译问题,网上查询glog的使用说明,基本上都是0.33及以前的版本的使用,此次也仅是记录一下0.33版本的使用,最新的0.50版本的编译问题,待解决后再行记录;
glog的使用步骤如下:
(1)下载glog源码,我这里选择的是0.33版本
https://github.com/google/glog/tags
(2)拷贝到工作目录,并解压,修改以下解压之后文件的执行权限
tar -xzvf glog-0.3.3.tar.gz
chmod 777 -R glog-0.3.3
(3)生成makefile文件,使用make命令生成库文件
./configure
make
(4)将生成的库文件./libs/及/src/glog目录下的头文件拷出来,放到测试代码目录下,测试代码glog.cpp如下:

//glog.cpp
  /********************************************************
Copyright (C), 2016-2018,
FileName: main
Description: Glog使用Demo
********************************************************/
#include <stdio.h>

#include "glog/logging.h"

int main()
{
   //初始化参数
   FLAGS_logtostderr = false;  //TRUE:标准输出,FALSE:文件输出
   FLAGS_alsologtostderr = true;  //除了日志文件之外是否需要标准输出
   FLAGS_colorlogtostderr = false;  //标准输出带颜色
   FLAGS_logbufsecs = 0;   //设置可以缓冲日志的最大秒数,0指实时输出
   FLAGS_max_log_size = 10;  //日志文件大小(单位:MB)
   FLAGS_stop_logging_if_full_disk = true; //磁盘满时是否记录到磁盘
   google::InitGoogleLogging("mqttserver");
   google::SetLogDestination(google::GLOG_INFO,"./test");
   LOG(INFO) << "this is log";
   LOG(WARNING) << "this is warnning";
   LOG(ERROR) << "this is error";
   google::ShutdownGoogleLogging();
}

(5)编译测试代码
g++ glog.cpp -o test -L./ -lglog -I./ -pthread
(6)执行生成的可执行文件test,会发现串口打印的日志信息,并记录到文件test20210823-104604.17274

ubuntu0compile:~/0.33$ ./test 
I0823 10:46:04.743094 17274 glog.cpp:22] this is log
W0823 10:46:04.743214 17274 glog.cpp:23] this is warnning
E0823 10:46:04.743290 17274 glog.cpp:24] this is error
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值