Glog使用

请先设置环境变量

export LOGPATH=/home/***/Log

下面是glog的一些封装:

//MyLog.h
#ifndef __MY_LOG_H_
#define __MY_LOG_H_
//GLog
#include <glog/logging.h>
#include <string>

//Glog
#define LOG_INFO LOG(INFO)
#define LOG_WARN LOG(WARNING)
#define LOG_ERROR LOG(ERROR)
#define LOG_FATAL LOG(FATAL)

static void INITIALIZE_LOG(char * filename)
{
	google::InitGoogleLogging(filename);

	FLAGS_logtostderr = 0;	//是否打印到控制台
	FLAGS_alsologtostderr=0;	//打印到日志同时是否打印到控制台
	FLAGS_stderrthreshold=google::FATAL;	//需要打印到控制台的日志级别
	FLAGS_minloglevel=0;	//
	string t_strLogPath = getenv("LOGPATH");	
	FLAGS_log_dir = t_strLogPath;

	string t_strInfoName, t_strWarningName, t_strErrorName, t_strFatalName;
	#ifdef FLAGS_INFO //info以上单日志
		t_strInfoName=t_strInfoName+FLAGS_log_dir+"/"+filename+".info.";
	#elif FLAGS_WARNING //waring以上单日志
		t_strWarningName=t_strWarningName+FLAGS_log_dir+"/"+filename+".warning.";
	#elif FLAGS_ERROR //error以上单日志
		t_strErrorName=t_strErrorName+FLAGS_log_dir+"/"+filename+".error.";
	#elif FLAGS_FATAL //fatal以上单日志
		t_strFatalName=t_strFatalName+FLAGS_log_dir+"/"+filename+".fatal.";
	#elif FLAGS_ALL //各级别分别日志
		t_strInfoName=t_strInfoName+FLAGS_log_dir+"/"+filename+".info.";
		t_strWarningName=t_strWarningName+FLAGS_log_dir+"/"+filename+".warning.";
		t_strErrorName=t_strErrorName+FLAGS_log_dir+"/"+filename+".error.";
		t_strFatalName=t_strFatalName+FLAGS_log_dir+"/"+filename+".fatal.";
	#else //默认INFO单日志
		t_strInfoName=t_strInfoName+FLAGS_log_dir+"/"+filename+".info.";
	#endif 

	google::SetLogDestination(google::INFO, t_strInfoName.c_str());
	google::SetLogDestination(google::WARNING, t_strWarningName.c_str());
	google::SetLogDestination(google::ERROR, t_strErrorName.c_str());
	google::SetLogDestination(google::FATAL, t_strFatalName.c_str());
}

#endif


上述头文件使用例子:

#include "../../stdafx.h"

#define FLAGS_INFO
#include "../../MyLog.h"


int main(int argc, char* argv[]) 
{
    // Initialize Google's logging library.
	INITIALIZE_LOG(argv[0]);
	
	LOG_INFO << "Hello1, Glog!";
	LOG_ERROR << "Hello2, Glog!";
	//LOG_FATAL << "Hello3, Glog!";
}


编译:

 g++ TestGlog.cpp -omain -lglog

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值