Liunx怎么安装spdlog(这是用来管理日志部分)

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Liunx怎么安装spdlog(这是用来管理日志部分)

怎么下载安装包,请参见如何从github上下载对应安装包。(其实就是从GitHub上spdlog 的仓库下载就好)

这里介绍怎样安装spdlog这个日志管理使用的库。

  1. 首先将源码包解压到自己的目录下。
[zry@localhost package]$ ls
date-master  git-2.34.1  ormpp-master  Python-3.8.0  spdlog-1.x  sqlpp11-main


  1. 进入到spdlog解压文件夹内
[zry@localhost package]$ cd spdlog-1.x/
[zry@localhost spdlog-1.x]$ ls
appveyor.yml  bench  build  cmake  CMakeLists.txt  example  include  INSTALL  LICENSE  logos  README.md  scripts  src  tests 
  1. 创建build 目录,用来存放cmake编译 相关内容
[zry@localhost spdlog-1.x]$ mkdir build
  1. 进入到build目录内
[zry@localhost spdlog-1.x]$ cd build/
  1. 进行cmake 编译,命令cmake ..
[zry@localhost build]$ cmake ..
-- The CXX compiler identification is GNU 8.3.1
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /opt/rh/devtoolset-8/root/usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Build spdlog: 1.12.0
-- Looking for C++ include pthread.h
-- Looking for C++ include pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Build type: Release
-- Generating example(s)
-- Generating install
-- Configuring done
-- Generating done
-- Build files have been written to: /home/zry/package/spdlog-1.x/build


  1. 进行编译 命令make -j
[zry@localhost build]$ make -j
[ 10%] Building CXX object CMakeFiles/spdlog.dir/src/spdlog.cpp.o
[ 20%] Building CXX object CMakeFiles/spdlog.dir/src/stdout_sinks.cpp.o
[ 30%] Building CXX object CMakeFiles/spdlog.dir/src/color_sinks.cpp.o
[ 40%] Building CXX object CMakeFiles/spdlog.dir/src/file_sinks.cpp.o
[ 50%] Building CXX object CMakeFiles/spdlog.dir/src/async.cpp.o
[ 60%] Building CXX object CMakeFiles/spdlog.dir/src/cfg.cpp.o
[ 70%] Building CXX object CMakeFiles/spdlog.dir/src/bundled_fmtlib_format.cpp.o
[ 80%] Linking CXX static library libspdlog.a
[ 80%] Built target spdlog
[ 90%] Building CXX object example/CMakeFiles/example.dir/example.cpp.o
[100%] Linking CXX executable example
[100%] Built target example
  1. 编译完成之后可以进行测试 在 build 目录下会有一个example文件夹,进入后执行./example可以看到测试结果。
[zry@localhost build]$ ls
CMakeCache.txt  cmake_install.cmake  CPackSourceConfig.cmake  libspdlog.a  spdlogConfig.cmake         spdlogConfigVersion.cmake
CMakeFiles      CPackConfig.cmake    example                  Makefile     spdlogConfigTargets.cmake  spdlog.pc
[zry@localhost build]$ cd example/
[zry@localhost example]$ ls
CMakeFiles  cmake_install.cmake  example  Makefile
[zry@localhost example]$ ./example 
[2024-02-26 17:46:12.223] [info] Welcome to spdlog version 1.12.0  !
[2024-02-26 17:46:12.224] [warning] Easy padding in numbers like 00000012
[2024-02-26 17:46:12.224] [critical] Support for int: 42;  hex: 2a;  oct: 52; bin: 101010
[2024-02-26 17:46:12.224] [info] Support for floats 1.23
[2024-02-26 17:46:12.224] [info] Positional args are supported too..
[2024-02-26 17:46:12.224] [info]    right aligned, left     aligned
[2024-02-26 17:46:12.224] [debug] This message should be displayed..
[17:46:12 +08:00] [I] [thread 16553] This an info message with custom format
[2024-02-26 17:46:12.224] [info] ****************** Backtrace Start ******************
[2024-02-26 17:46:12.224] [debug] Backtrace message 90
[2024-02-26 17:46:12.224] [debug] Backtrace message 91
[2024-02-26 17:46:12.224] [debug] Backtrace message 92
[2024-02-26 17:46:12.224] [debug] Backtrace message 93
[2024-02-26 17:46:12.224] [debug] Backtrace message 94
[2024-02-26 17:46:12.224] [debug] Backtrace message 95
[2024-02-26 17:46:12.224] [debug] Backtrace message 96
[2024-02-26 17:46:12.224] [debug] Backtrace message 97
[2024-02-26 17:46:12.224] [debug] Backtrace message 98
[2024-02-26 17:46:12.224] [debug] Backtrace message 99
[2024-02-26 17:46:12.224] [info] ****************** Backtrace End ********************
[2024-02-26 17:46:12.226] [info] Binary example: 
0000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f
0060: 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f
0080: 30 31 32 33 34 35 36 37 38 39 3a 3b 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f
[2024-02-26 17:46:12.226] [info] Another binary example:00 00 00 00 00 00 00 00 00 00
[2024-02-26 17:46:12.226] [info] Vector example: [1, 2, 3]
[multi_sink_example] [warning] this should appear in both console and file
[2024-02-26 17:46:12.226] [info] user defined type: [my_type i=14]
[2024-02-26 17:46:12.350] [info] Stopwatch: 0.123150527 seconds
[2024-02-26 17:46:12.350] [info] Before opening logs/events-sample.txt
[2024-02-26 17:46:12.350] [info] After opening logs/events-sample.txt
[2024-02-26 17:46:12.350] [info] Before closing logs/events-sample.txt
[2024-02-26 17:46:12.350] [info] After closing logs/events-sample.txt
[2024-02-26 17:46:12.350] [info] End of example.
[2024-02-26 17:46:12.350] [console] [info] End of example.
[zry@localhost example]$ ll -lrt 
总用量 580
-rw-rw-r--. 1 zry zry   8745 2月  26 17:44 Makefile
-rw-rw-r--. 1 zry zry   1282 2月  26 17:44 cmake_install.cmake
drwxrwxr-x. 3 zry zry   4096 2月  26 17:44 CMakeFiles
-rwxrwxr-x. 1 zry zry 567664 2月  26 17:44 example
drwxr-xr-x. 2 zry zry   4096 2月  26 17:46 logs
[zry@localhost example]$ 

分享一个有趣的 学习链接:https://xxetb.xet.tech/s/HY8za


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
3月前
|
监控 Ubuntu 安全
如何在 VPS 上安装和使用 Logwatch 日志分析器和报告工具
如何在 VPS 上安装和使用 Logwatch 日志分析器和报告工具
43 1
|
22天前
|
缓存 Linux 编译器
【C++】CentOS环境搭建-安装log4cplus日志组件包及报错解决方案
通过上述步骤,您应该能够在CentOS环境中成功安装并使用log4cplus日志组件。面对任何安装或使用过程中出现的问题,仔细检查错误信息,对照提供的解决方案进行调整,通常都能找到合适的解决之道。log4cplus的强大功能将为您的项目提供灵活、高效的日志管理方案,助力软件开发与维护。
44 0
|
3月前
|
缓存 NoSQL Linux
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
115 1
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
|
3月前
|
Java 编译器 数据库
异步日志方案——spdlog
异步日志方案——spdlog
|
3月前
|
NoSQL Ubuntu Java
如何在 Ubuntu 14.04 上安装 Graylog2 并实现日志集中管理
如何在 Ubuntu 14.04 上安装 Graylog2 并实现日志集中管理
30 1
|
3月前
|
运维 监控 Ubuntu
一键启动日志魔法:揭秘ELK自动安装脚本的神秘面纱!
【8月更文挑战第9天】在数据驱动时代,高效处理日志至关重要。ELK Stack(Elasticsearch、Logstash、Kibana)是强大的日志分析工具,但其复杂的安装配置常让初学者望而却步。本文介绍如何编写ELK自动安装脚本,简化部署流程。脚本适用于Ubuntu系统,自动完成ELK下载、安装及基本配置,包括依赖项安装、服务启动及自启设置,极大降低了使用门槛,助力运维人员和开发者轻松构建日志分析平台。
140 6
|
4月前
|
存储 弹性计算 运维
可观测性体系问题之ECS管控对其所有日志的管理如何解决
可观测性体系问题之ECS管控对其所有日志的管理如何解决
41 0
|
5月前
spdlog 日志库部分源码说明——让你可以自定义的指定自动切换日志时间
spdlog 日志库部分源码说明——让你可以自定义的指定自动切换日志时间
123 7
|
5月前
|
C++
spdlog 日志库部分源码说明——日志格式设定,DIY你自己喜欢的调试信息,你能调试的远比你想象的还要丰富
spdlog 日志库部分源码说明——日志格式设定,DIY你自己喜欢的调试信息,你能调试的远比你想象的还要丰富
262 6
|
5月前
|
监控 网络协议 Linux
技术好文共享::Linux系统日志管理日志转储
技术好文共享::Linux系统日志管理日志转储
90 0