nanolog编译、性能测试

  1. 基本情况介绍
    1. 为什么快:格式化是一个很耗时的操作,因此nanolog把格式化的内容放到线程里头去做。待写入的日志全部放到一个buffer里头,标志写入每个日志的类型
    2. nanolog有两个版本,一个是C++17, 一个是C++11, 前者速度快但编译麻烦, 后者使用方便,但速度较前者慢一些
    3. C++17的版本, 地址如下:https://github.com/PlatformLab/NanoLog
    4. C++11的版本, 地址如下:https://github.com/Iyengar111/NanoLog
  2. nanologC++11使用很简单,就两个文件,应用代码包含一下就可以用了
  3. nanologC++17 编译
    1. CentOS安装高版本的gcc
      1. 命令行操作
        1. yum install centos-release-scl
        2. yum install devtoolset-8-toolchain
        3. scl enable devtoolset-8 bash
        4. gcc --version
      2. 默认GCC版本方法:
        1. 该命令(scl enable devtoolset-8 bash)只是在当前命令行shell中使高版本gcc生效,退出当前shell后即失效, 要想使其一直生效,可以在/etc/profile中参加以下内容:source /opt/rh/devtoolset-8/enable
    2. cmake需要在CMakeList文件中添加
      1. set(CMAKE_C_COMPILER "/opt/rh/devtoolset-8/root/usr/bin/gcc")
      2. set(CMAKE_CXX_COMPILER "/opt/rh/devtoolset-8/root/usr/bin/g++")
    3. nanologC++17有preprocessor和普通两种模式:前者会通过python预先展开一些代码,性更好一点,但应用代码编译时需要包含自带的makefile,比较麻烦,这里我们用后一种普通模式
    4. 解压后进入runtime, make ,会生成libNanoLog.a
    5. 然后进入sample,make,生成sampleApplication测试程序和decompressor解日志工具
    6. 运行sampleApplication测试速度, 然后./decompressor decompress /tmp/logFile(这个路径是在main.cc代码设定的)解出可读日志

     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值