首页 > 代码库 > google-glog配置使用笔记

google-glog配置使用笔记

首先下载glog-0.3.3.tar.gz,解压,直接打开VS工程,我用了动态库,

新建win32 console test

把src\windows包含进来,../Debug/libglog.lib链接进来,这样就ok了。

新建main.cpp:

#define GLOG_NO_ABBREVIATED_SEVERITIES
#include <windows.h>
#include <glog/logging.h>

using namespace google;
int main(int argc, char* argv[]) {
	google::InitGoogleLogging("test");
	google::SetLogDestination(google::GLOG_INFO, "../Debug/logtestInfo"); 
	google::SetLogDestination(google::GLOG_ERROR, "../Debug/logtestDebug");//不为ERROR建立日志文件
	int num_cookies = 0;
	
	google::SetStderrLogging(google::GLOG_INFO);
	google::SetStderrLogging(google::GLOG_ERROR);
	//google::LogToStderr();
	for (int i = 0; i < 10000; ++i){
		LOG(INFO) << "我没卡上大四的" << i << " cookies";
		//LOG(ERROR) << "Found " << i << " cookies";
		//LOG(DEBUG) << "Found " << i << " cookies";
	}
	google::ShutdownGoogleLogging();
}



google::SetLogDestination(google::GLOG_INFO, "../Debug/logtest"); 
设置了生成日志目录,这样就在Debug文件夹下生成了日志。

google::SetStderrLogging();

设置了在console输出日志。当然不设置它就只会生成日志文件。

这样运行就可以了,当然如果如果能配置输出不同等级日志颜色就更好了。

以后会研究下源码,文件本来就不多,因为要跨平台封装了一些东西,但最大的确定是不支持异步写,现在是或者其实里面提供了真正写日志的函数接口,可以定制自己的策略。但是作为服务器端,IO是难以忍受的。

再研究下其他日志库。