`

google_Glog使用(linux)

 
阅读更多

第二篇日志,居然还是google的 google-glog,顾名思义,google提供的日志库,刚开始使用,心得体会暂时没有,先看看如何使用吧

安装:
step1:下载地址:http://code.google.com/p/google-glog/downloads/detail?name=glog-0.3.1-1.tar.gz
step2:解压,configure,make,make install
step3:demo.c
------------------------------------------------------------
#include <glog/logging.h>
int main(int argc, char* argv[]) 
{
    //Initialize Google's logging library.
    google::InitGoogleLogging(argv[0]);
    int num_cookies = 10;
    LOG(INFO) << "Found " << num_cookies << " cookies";
    return 0;
}
------------------------------------------------------------
step4:编译 g++ demo.cpp -L ../glog-0.3.1/lib -lglog -o demo.exe
step5:运行 ./demo.exe 

输出解析 
默认输出日志在 /tmp下 格式为"/tmp/<program name>.<hostname>.<user name>.log.<severity level>.<date>.<time>.<pid>"
比如,本人的机器运行结果如下:
>:/data6/peterguo/glog/demo> l /tmp/demo.exe* 
-rw-r--r-- 1 sosotest users 207 2011-03-24 16:54 /tmp/demo.exe.JingKai_10_161_29_146.sosotest.log.INFO.20110324-165411.10016
>:/data6/peterguo/glog/demo>cat /tmp/demo.exe.JingKai_10_161_29_146.sosotest.log.INFO.20110324-165411.10016
Log file created at: 2011/03/24 16:54:11 【日志产生时间】
Running on machine: JingKai_10_161_29_146 【日志的其他信息】
Log line format: [IWEF]mmdd hh:mm:ss.uuuuuu threadid file:line] msg 【日志格式】
I0324 16:54:11.589886 10016 demo.cpp:8] Found 10 cookies       【这里就是日志打印的结果了】

若不希望产生日志文件,也可以通过环境变量把输出直接定向到终端,详情见 参考glog文档
GLOG_logtostderr=1 ./demo.exe 
 
glog路径设置路径:使用log必然要涉及到log路径,这些在手册里介绍的不是很清楚,可以查看源码
/usr/local/include/glog/logging.h 函数:SetLogDestination(LogSeverity severity, const char* base_filename);
例如
---------------------------------------------------------------------------------------

google::SetLogDestination(google::INFO,"./myInfo_");  //高于INFO级别的,记录在当前目录并以myInfo_为前缀的日志

google::SetLogDestination(google::ERROR,"");           //如果前缀为空,则不建立ERROR级别的日志

 

 google::SetStderrLogging(google::INFO);                   //配置输出到标准错误输出的最低日记级别

 google::LogToStderr();                                                //只输出到标准错误输出

另外,配合gflag的话,代码中如果设置有以FLAGS_ 开头的变量,使用 GLOG_ 开头的环境变量进行设置,如

 

 

FLAGS_log_dir = "./";  与设置环境 GLOG_log_dir = "./"  具有相同的作用,且程序中的设置优先级高

---------------------------------------------------------------------------------------

更多内容见http://code.google.com/p/google-glog/


分享到:
评论

相关推荐

    windows平台glog库

    `glog`是一个广泛使用的开源日志库,源自Google,它提供了C++编程语言中的高级日志功能。这个库的主要目标是提供一个类似于Java的日志框架,具有丰富的功能,如堆栈跟踪、日志级别控制、日志文件旋转等。在Windows...

    Linuux环境下安装glog

    在Linux环境中,Google的glog库是一个非常实用的日志记录工具,它提供了丰富的日志级别、堆栈回溯以及错误处理功能。以下是如何在Linux上安装glog的详细步骤: 1. **下载安装包** 首先,你需要获取glog的源代码。...

    glog_LIB.rar

    总的来说,“glog_LIB.rar” 包含的资源使得开发者可以便捷地在 Windows 和 Linux 平台上使用 glog,无论是进行简单的日志记录还是进行复杂的调试工作,glog 都能提供强大的支持。结合提供的教程,学习和应用 glog ...

    stm32平台Ubuntu系统下glog使用及功能修改

    Google开源的日志库glog是广泛使用的日志处理工具,它提供了丰富的功能,包括日志级别控制、堆栈追踪、日志输出格式定制等。在Ubuntu系统上,glog同样可以很好地工作,尽管它主要设计用于Linux服务器环境。本教程将...

    Qt中第三方日志库Glog的基本配置和使用详解案例.rar

    Qt中第三方日志库Glog的基本配置和使用详解案例,仅供参考,不可盲目相信,因为我的编译环境和您的不相同,所以建议参考文章自己编译,文章可参考:https://blog.csdn.net/didi_ya/article/details/123052672

    glog-0.6.0 静态库(64位)

    Glog 是 Google 的开源日志系统,本质上是一个程序级记录日志信息的 C++ 库,编程使用方式与 C++ 的 stream 操作类似。Glog 提供 C++ 风格的流操作和各种助手宏,允许用户根据指定的严重性等级选择性记录日志,日志...

    安装glog和gflags

    - **glog**:由Google开发,提供了一套强大而灵活的日志系统。 - **gflags**:同样是来自Google的开源项目,用于解析命令行参数。 本文将详细介绍如何在Linux环境下安装这两个工具。 #### 二、准备工作 在开始安装...

    Linux环境下使用glog日志库的方法

    Linux使用静态库来测试,copy静态库libglog.a和src/glog的头文件到自己的工程目录,创建main.cpp文件,添加如下代码: /******************************************************** Copyright (C), 2016-2018, ...

    linux下glog安装手册

    Linux 下的 Google glog 是一个强大的日志记录库,它为 C++ 开发者提供了方便、灵活的日志处理功能。glog 提供了多种日志级别,如 INFO、WARNING、ERROR 和 FATAL,以及异常处理机制,使得在开发过程中调试和追踪...

    glog_SourceAndCompile.rar

    glog 是一个开源的日志记录库,由 Google 开发并维护,广泛应用于 C++ 项目中。它提供了丰富的日志级别、堆栈跟踪、自定义日志处理器等功能,为开发者提供稳定且高效的日志处理能力。在本文中,我们将深入探讨 glog ...

    glog-0.3.5.zip

    在Java世界里,log4j和SLF4J是广泛使用的日志框架,而在C++的世界里,Google推出的glog则扮演了类似的角色。本文将深入探讨glog这个开源日志库,以及如何在Linux环境下利用它来提升开发效率。 glog,全称为Google ...

    完整的glog模块,可点击下载安装

    对于大多数Linux系统,可以使用`cmake`,命令如下: ``` mkdir build cd build cmake .. ``` 3. **编译步骤**:配置完成后,执行编译命令: ``` make ``` 4. **安装步骤**:编译成功后,将库文件安装到...

    glogDemo(linux)

    在压缩包文件"**glogDemo**"中,可能包含了示例代码、编译脚本或其他辅助文件,用于演示如何在Linux环境下配置和使用glog。通过学习这些示例,开发者可以快速掌握glog的使用方法,并将其应用到自己的项目中。 总结...

    glog window下编译生成的SDK

    在Windows环境下,由于其主要设计目标是Linux平台,因此在Windows上的编译和使用相对复杂,但通过Visual Studio 2013等工具,我们可以顺利构建出适用于Windows的SDK。本文将深入探讨glog在Windows下的编译过程,并...

    glog基础知识精讲

    这些函数使得在不同操作系统下(例如Windows和Linux),日志模块的使用都变得更加方便和高效。 以上就是glog日志库的一些基础知识,希望通过这些知识的介绍,能够帮助开发者更好地理解和使用glog,从而在开发过程中...

    google-breakpad(刚git下来的,热乎的)

    它可以在各种操作系统上运行,包括Windows、Linux和macOS,为开发者提供了一种跨平台的崩溃报告机制。 ### 1. Breakpad的基本原理 Breakpad的核心功能是在应用程序崩溃时生成一个minidump文件,该文件包含了程序...

    glog的include和lib

    glog 是一个由 Google 开发的日志记录库,它提供了丰富的日志级别、异常处理和堆栈跟踪功能,常用于 C++ 应用程序。在 C++ 编程中,日志记录是不可或缺的一部分,它有助于调试、追踪程序运行状态以及在生产环境中...

    麒麟v10服务版glog和gflags

    麒麟v10服务版的glog和gflags是两个在C++编程中广泛使用的开源库,尤其在系统级服务和大型软件项目中扮演着重要角色。glog是Google开发的日志记录库,而gflags则是用于处理命令行参数的工具。 **glog库** glog库为...

    测试讯飞的离线命令词系统在一些场景下的效果 使用CMake工具进行编译,使用有Qt库,日志库glog

    描述中的“使用CMake工具进行编译,使用有Qt库,日志库glog”揭示了项目的构建和开发过程。CMake是一种跨平台的构建系统,它允许开发者编写一次构建脚本,然后在多种操作系统和编译器上编译项目,确保代码的可移植性...

Global site tag (gtag.js) - Google Analytics