C++的日志模块glog

说明

由于我使用的windows平台VisualStudio开发,而glog不提供VS版本(因为维护太麻烦,要做好多个VS版本)。

自己搭建安装,还是挺麻烦的。此文发布时,网上是找不到像样的环境搭建教程的,如何用它写代码倒是有

  • 我尝试过用Nuget,不能用。
  • 最后自己去github的glog官网上下载自己编译。历经挫折,弄了一天才搞定。现在将自己整理过的成果放上来,
    glog-我的码云仓库 - 开箱即用,内附教程了

效果

以一个例程来说明。(此例程也有在我的码云仓库的,readme中介绍)

#include <iostream>
#include <vector> 
#include "glog/logging.h" 

int main()
{
	google::InitGoogleLogging("myLog");
	google::SetLogDestination(google::GLOG_INFO, "E://"); // 设置日志路径
	
	// ...
	char str[20] = "hello log!";
	LOG(INFO) << "Found " << google::COUNTER << std::endl;
	LOG(INFO) << str;				// Info日志(输出到文件)
	LOG(WARNING) << "warning test"; // Warning日志(输出到文件)
	LOG(ERROR) << "error test";     // Error日志(输出到文件、控制台) 
	LOG(ERROR) << "错误测试";

	return 0;
}

日志文件名大概是20191226-065432.9568这种格式,按照文本方式来打开,内容格式如下。

Log file created at: 2019/12/26 06:54:32
Running on machine: TANZI-PC
Log line format: [IWEF]mmdd hh:mm:ss.uuuuuu threadid file:line] msg
I1226 06:54:32.609277 11152 myGLogTest.cpp:12] Found 0
I1226 06:54:32.611277 11152 myGLogTest.cpp:13] hello log!
W1226 06:54:32.611277 11152 myGLogTest.cpp:14] warning test
E1226 06:54:32.613277 11152 myGLogTest.cpp:15] error test
E1226 06:54:32.614277 11152 myGLogTest.cpp:16] 错误测试

INFOWARNINGERROR这几种日志都被输出到日志文件中,ERROR日志还会同时输出到控制台

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章