- 2024-08-22开源组件——异步日志方案 spdlog 的讲解
一:日志的作用1、定义 日志(Log)是记录系统中发生的事件或操作的详细信息的文件或数据流。这些事件或操作可能包括程序执行、系统错误、用户活动、安全事件等日志(Log)是记录系统中发生的事件或操作的详细信息的文件或数据流。这些事件或操作可能包括程序执行、系
- 2024-08-01为什么 spdlog 不在异步函数中打印
importasynciofrompathlibimportPathimportspdlogasspdimportasyncioimportloggingasyncdefA():asyncio.create_task(B())whileTrue:awaitasyncio.sleep(1)asyncdefB():logger=spd.DailyLogger(name='B',filen
- 2024-06-23Spdlog日志库的安装配置与源码解析(Linux)
为什么使用日志库而不是控制台输出?日志库通常提供了更丰富的功能,比如可以设置日志输出级别、输出到不同的目标(比如控制台、文件、网络等),以及格式化输出等。使用日志库可以使代码更易于维护。通过统一的日志接口,可以更容易地对日志输出进行修改、调整和管理,而不需要在代
- 2024-06-01spdlog日志库源码:日志记录器logger类
特性一个logger类对象代表一个日志记录器,为用户提供日志记录接口。每个logger对象都有一个唯一的名称,用于标识该logger。logger对象维护一个日志等级(如DEBUG、INFO、WARN、ERROR等)。只有当日志消息的等级高于或等于logger的当前等级时,消息才会被记录下来。logger
- 2024-06-01spdlog日志库源码:输出通道sink
概述在spdlog日志库中,sinks并不是一个单独的类,而是一系列类的集合,这些类以基类-派生类的形式组织,每一个sink派生类代表了一种输出日志消息的方式。输出目标可以是普通文件、标准输出(stdout)、标准错误输出(stderr)、系统日志(syslog)等等。其文件位于include/spd
- 2024-03-09spdlog 源码解析
spdlog是开源、高性能、跨平台,支持header-only/compiled的C++日志库。本文主要目的是对spdlogv1.13.0的源码进行分析(编译运行环境为6.5.0-18-generic#18~22.04.1-Ubuntu),以探讨spdlog如何构建高性能、可扩展的日志框架的。github链接gabime/spdlog:FastC++loggingli
- 2024-02-07如何基于 spdlog 在编译期提供类 logrus 的日志接口
如何基于spdlog在编译期提供类logrus的日志接口实现见Github,代码简单,只有一个头文件。前提几年前看到戈君在知乎上的一篇文章,关于打印日志的一些经验总结;实践下来很受用,在golang里结构化日志和logrus非常契合,最常见的使用方式如下。logrus.WithField("addr","127.0
- 2024-01-22C++日志记录库spdlog
镜像库https://gitee.com/yctxkj/spdlog.gitspdlog是基于C++11实现的一款纯头文件的日志管理库(git地址:https://github.com/gabime/spdlog,API说明:https://spdlog.docsforge.com/v1.x/1.quickstart/):配置特别简单,仅包含头文件即可;写日志方式简单明了;可实现自动按日期创建日志文
- 2023-12-15使用conan安装并使用Spdlog
IntroduceVeryfast,header-only/compiled,C++logginglibrary.https://github.com/gabime/spdlog.gitInstallHeader-onlyversion复制include文件夹到你的项目中,并使用C++11。Compiledversion(recommended-muchfastercompiletimes)$gitclonehttps://github
- 2023-12-02spdlog 格式化
这里记录一下spdloglog的pattern具体参数,官方链接见https://github.com/gabime/spdlog/wiki/3.-Custom-formatting#pattern-flags简单版见下表flagmeaningexample%vTheactualtexttolog"someusertext"%tThreadid"1232"%PProcessid"3
- 2023-10-31量化交易之One Piece篇 - spdlog - 示例demo
#include<memory>#include<onepiece/datacore/DataCore.h>#include<spdlog/spdlog.h>#include<spdlog/sinks/basic_file_sink.h>#include<memory>usingnamespacestd;intmain(intargc,constchar*argv[]){//testsp
- 2023-09-11splog-杂谈与总结
1.概述 spdloggithub地址,spdlog日志库自身带有包括控制台日志记录、基础文件日志记录、循环文件日志记录、每日文件日志记录等在内的日志记录方式,能满足日常不同的情景需求。 本文主要介绍spdlog日志库的基本使用,包括创建日志记录器(logger)、创建日志记录器槽(sink)
- 2023-09-08spdlog 使用学习笔记
spdlog使用学习笔记部分内容参考了《spdlog使用_CSDN》这篇文章。1.spdlog简介github地址:https://github.com/gabime/spdlogspdlog是一个C++的日志管理工具库。2.spdlog的安装2.1.使用包管理器安装Debian:sudoaptinstalllibspdlog-devHomebrew:brewinstallspd
- 2023-09-05【ToolChains】CLion(VS2019) + CMake + Vcpkg 的使用
参考博客:https://blog.51cto.com/u_15075510/4201238http://t.csdn.cn/pADDUhttps://zhuanlan.zhihu.com/p/454233496https://blog.csdn.net/weixin_43803955/article/details/123544106Vcpkg概述Vcpkg是微软社区开发的一个跨平台的C++包管理工具。它旨在解决C++
- 2023-08-26一个简单的spdlog使用示例
目录引用源码封装Log头文件使用方法spdlog是一个开源、跨平台、无依赖、只有头文件的C++11日志库,网上介绍的文章有很多这里就不过多的介绍了,GitHub链接:https://github.com/gabime/spdlog。引用源码先下载spdlog的源码,将源码的include文件夹复制到自己的项目文件夹下:然后在项
- 2023-07-3001、spdlog源码阅读——registry注册表
注册表具有唯一标识,用于管理多个日志//Copyright(c)2015-present,GabiMelman&spdlogcontributors.//DistributedundertheMITLicense(http://opensource.org/licenses/MIT)#pragmaonce//Loggersregistryofuniquename->loggerpointer//Anattempttocr
- 2023-07-17spdlog日志库源码:CMake构建项目
目录spdlog项目构成CMake构建根目录CMakeLists.txtcmake版本要求include专用cmake文件设置默认build类型编译器配置判断当前项目是否为spdlog选项开关spdlog项目构成Github源码:https://github.com/gabime/spdlogspdlog项目采用CMake构建,其一级目录结构如下$tree-L1.├─
- 2023-06-10spdlog使用头文件或dll的宏设置
宏作用SPDLOG_HEADER_ONLYspdlog只使用头文件FMT_HEADER_ONLYfmtlib只用用头文件SPDLOG_COMPILED_LIBspdlog使用dllSPDLOG_SHARED_LIBspdlog使用dll,实际可以不设置,单独设置SPDLOG_COMPILED_LIB就可以SPDLOG_ACTIVE_LEVEL=SPDLOG_LEVEL_TRACESPDLOG_TRAC
- 2023-05-10spdlog库笔记汇总
目录库介绍源码解析库介绍spdlog库笔记(一):简介spdlog库笔记(二):编译、安装源码解析spdlog日志库源码:线程池thread_poolspdlog日志库源码:异常类spdlog_exspdlog日志库源码:formatter类spdlog日志库源码:logger类spdlog日志库源码:registry类spdlog日志库源码:sinks系列类
- 2023-05-03spdlog编译报错:表达式的计算结果不是常数
VSC2131:表达式的计算结果不是常数;错误代码:intarray[cols];正确写法:int*array=newint[cols];错误原因:创建数组时数组长度是不能用变量的参考:https://blog.csdn.net/qq_39027296/article/details/104936998解决思路,这个问题是constepr导致的,那我们就把其中一部分
- 2023-03-28第四部分:Spdlog日志库的核心组件分析-logger
Spdlog是一个快速且可扩展的C++日志库,它支持多线程和异步日志记录。在本文中,我们将分析Spdlog日志库的核心代码,探究其实现原理和代码结构。Spdlog的基本架构上一篇文章介
- 2023-03-27第一部分:介绍 Spdlog 日志库
什么是Spdlog日志库Spdlog是一个C++的日志库,它具有高效、易用、跨平台等特点。它可以写入到控制台、文件等输出目标,支持多种日志级别、多线程安全等功能,非常适合在C
- 2022-11-28spdlog库和fmt库是否使用dll宏定义
定义FMT_HEADER_ONLY定义SPDLOG_COMPILED_LIB使用fmt.dll使用spdlog.dllNONOYESNOYESNONONONOYESYESYESYESYESYESYES
- 2022-11-27spdlog日志库源码:registry类
目录registry类意义registry类实现registry数据成员registry函数成员构造与析构单例模式全局注册表initialize_logger初始化logger对象全局格式器预置日志等级flush日志等
- 2022-11-19spdlog日志库源码:formatter类
目录相关概念formatter类描述formatter系列类类图关系formatter类pattern_formatter类构造与析构compile_pattern_编译patternhandle_padspec_按pad规格处理handle_flag_