当前位置: 首页 > news >正文

Glog安装与使用

安装

脚本

#!/bin/bash
git clone https://github.com/google/glog.git
cd glog
git checkout v0.4.0
mkdir build && cd build
cmake ..
make -j4
echo "your password" | sudo -S make install

使用

main.cc

#include <glog/logging.h>int main(int argc, char *argv[])
{// Initialize Google’s logging library.// changeFLAGS_log_dir="/home/d/githubPro/casadi_test/build/logs/";// 最大日志大小(MB)FLAGS_max_log_size = 100;// FLAGS_logtostderr = false;     //如果FLAGS_logtostderr设置为true,日志将输出到标准输出;如果设置为false,则日志将输出到指定的文件中FLAGS_alsologtostderr = true;  // 设置日志消息除了日志文件之外还可显示到屏幕上FLAGS_colorlogtostderr = true; // 彩色打印输出google::InitGoogleLogging(argv[0]);// google::SetLogDestination(google::GLOG_INFO, "/home/d/githubPro/casadi_test/build/logs.log");LOG(INFO) << "This is an information message gogo";LOG(WARNING) << "This is a warning message";LOG(ERROR) << "This is an error message";/* 条件日志 */int num_cookies = 11;int size = 123;int i = 0;// num_cookies > 10才输出LOG_IF(INFO, num_cookies > 10)<< "Got lots of cookies";while (++i < 30){// google::COUNTER 记录该语句被执行次数,从1开始,在第一次运行输出日志之后,每隔 10 次再输出一次日志信息LOG_EVERY_N(INFO, 10) << "Got the " << google::COUNTER << "th cookie";//每隔 10 次去判断条件是否满足,如果满足则输出日志;当满足某条件的情况下,每隔 10 次输出一次日志信息LOG_IF_EVERY_N(INFO, (size > 1024), 10) << "Got the " << google::COUNTER << "th big cookie";  // 当此语句执行的前 20 次都输出日志,然后不再输出LOG_FIRST_N(WARNING, 20) << "first  " << google::COUNTER << " ";}google::ShutdownGoogleLogging(); // 关闭
}

cmake文件

cmake_minimum_required (VERSION 3.0.2)
project (glog_test VERSION 1.0)find_package (glog 0.4.0 REQUIRED)add_executable (main main.cc)
target_link_libraries (main glog::glog)

Todo 补充

http://www.lryc.cn/news/135278.html

相关文章:

  • windows开发环境搭建
  • 8月17日上课内容 第三章 LVS+Keepalived群集
  • Threejs学习05——球缓冲几何体背景贴图和环境贴图
  • LVS+Keepalived群集实验
  • 软考高级之系统架构师之系统开发基础
  • Web 3.0 安全风险,您需要了解这些内容
  • 万宾科技22款产品入选《城市生命线安全工程监测技术产品名录》
  • MFC 隐藏窗口
  • Java数据库连接池原理及spring boot使用数据库连接池(HikariCP、Druid)
  • 百度商业AI 技术创新大赛赛道二:AIGC推理性能优化TOP10之经验分享
  • 微服务时代java异常捕捉
  • Hadoop支持LZO压缩
  • vue3 01-setup函数
  • iOS swift 类似AirDrop的近场数据传输 MultipeerConnectivity 框架
  • Lnton羚通云算力平台OpenCV-PythonCanny边缘检测教程
  • 2023-8-23 滑动窗口
  • SOA通信中间件常用的通信协议
  • 解决npm安装依赖失败,node和node-sass版本不匹配的问题
  • 2023 网络建设与运维 X86架构计算机操作系统安装与管理题解
  • LAMP 架构及Discuz论坛与Wordpress博客搭建
  • 考研C语言进阶题库——更新51-60题
  • 智能算法挑战赛决赛题目——初中组
  • 一分钟学算法-递归-斐波那契数列递归解法及优化
  • 选择Rust,并在Ubuntu上使用Rust
  • SVM详解
  • mysql全文检索使用
  • opencv 进阶17-使用K最近邻和比率检验过滤匹配(图像匹配)
  • Mac Flutter web环境搭建
  • 在外SSH远程连接macOS服务器
  • Dockerfile文件详细