首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GLOG多线程日志

GLOG多线程日志
EN

Stack Overflow用户
提问于 2017-12-06 21:34:02
回答 1查看 1.1K关注 0票数 0

我想使用Glog lib来记录我的应用程序日志。我的应用程序是多线程的。正如glog中所建议的那样,我认为应该使用RAW_LOG来保证线程安全。以下是我的示例代码。

代码语言:javascript
复制
  #include "stdafx.h"
  #define GLOG_NO_ABBREVIATED_SEVERITIES
  #include <windows.h>
  #include <glog/logging.h>
  #include <glog/raw_logging.h>
  using namespace std;

  int main(int /*argc*/, char** argv)
  {
      FLAGS_alsologtostderr = 1;

      google::SetLogDestination(google::GLOG_INFO, "E:/mylog.log");
      google::InitGoogleLogging(argv[0]);
      //LOG(INFO) << "Infomration";
      RAW_LOG_INFO("Test");

      RAW_LOG(INFO,"This is INFO");
      RAW_LOG(WARNING,"This is WARNING");
      RAW_LOG(ERROR, "This is Error");
      return 0;
   }

但是,如果我使用RAW_LOG,则不会生成日志文件,但如果我使用LOG()函数,则会生成日志文件。

请告诉我如何使用RAW_LOG函数或者是LOG()函数是否是线程安全。

EN

回答 1

Stack Overflow用户

发布于 2018-10-23 19:46:04

这是来自raw_logging.h

代码语言:javascript
复制
// * it logs straight and ONLY to STDERR w/o buffering

它只能记录到stderr,并且仅用于低级代码的调试目的,因此RAW_LOG(INFO,"...")永远不会生成任何日志文件。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47675631

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档