当前位置: 首页 > news >正文

C++-spdlog-使用

1.下载
https://github.com/gabime/spdlog
2.示例代码
 

spdlog::set_level(spdlog::level::debug);
spdlog::default_logger()->debug("hello world");

以下代码是输出到控制台或者文件里

3.spdlog 提供多种日志文件策略,包括:

3.1滚动文件(Rolling File):根据文件大小或日期自动滚动日志文件。
     例如,spdlog::rotating_logger_mt 可以在文件达到指定大小后滚动生成新文件。

3.2异步日志(Asynchronous Logging):将日志消息异步地写入文件,使用           spdlog::async_logger 提高性能,避免阻塞主线程。

3.3 旋转日志(Daily File Rotation):
      每天生成一个新的日志文件,适合需要按日期组织日志的应用。

3.4 文件切割(File Splitting):

    按照文件大小切割日志,适用于需要控制日志文件大小的场景。

设置默认参数,按天分割
spdlog::default_logger(logger):

4.spdlog 日志文件格式化
spdlog::set_pattern 可以定义日志的输出格式

#include <spdlog/spdlog.h>
#include <spdlog/sinks/basic_file_sink.h>int main() {// 创建文件日志记录器auto file_logger = spdlog::basic_logger_mt("file_logger", "logs.txt");// 设置日志格式spdlog::set_pattern("[%Y-%m-%d %H:%M:%S] [%l] %v");// 记录日志spdlog::info("This is an info message.");spdlog::warn("This is a warning message.");spdlog::error("This is an error message.");return 0;
}

#include "spdlog/spdlog.h"int main(int argc, char const *argv[])
{spdlog::info("Welcome to spdlog!");spdlog::error("Some error message with arg: {}", 1);spdlog::warn("Easy padding in numbers like {:08d}", 12);spdlog::critical("Support for int: {0:d};  hex: {0:x};  oct: {0:o}; bin: {0:b}", 42);spdlog::info("Support for floats {:03.2f}", 1.23456);spdlog::info("Positional args are {1} {0}..", "too", "supported");spdlog::info("{:<30}", "left aligned");spdlog::set_level(spdlog::level::debug); // Set global log level to debugspdlog::debug("This message should be displayed..");    // change log patternspdlog::set_pattern("[%H:%M:%S %z] [%n] [%^---%L---%$] [thread %t] %v");// Compile time log levels// define SPDLOG_ACTIVE_LEVEL to desired levelSPDLOG_TRACE("Some trace message with param {}", 42);SPDLOG_DEBUG("Some debug message");return 0;
}


http://www.mrgr.cn/news/18833.html

相关文章:

  • 数据结构4—双向链表(附源码)
  • 【前端面试】设计循环双端队列javascript
  • 智慧医院必备信息化系统之——LIS系统源码
  • C++——入门基础(下)
  • 深入理解 FastAPI 测试:TestClient带你飞起来
  • 1.3 JavaWeb基础面试题
  • TeeChart助力科研软件:高效实现数据可视化
  • Vue3实时更新时间(年-月-日 时:分:秒)
  • 还在用谷歌翻译?这4款翻译工具也许更高效!
  • python计算机视觉编程——照相机模型与增强现实
  • kubernetes里面那些事—————存储
  • 香港服务器支持PHP吗?还支持哪些语言?
  • Vue 组件有哪些通讯方式?这里有10种方式及示例代码
  • wacat - 一款开源随机测试工具
  • AI 生成技术引领创新潮流,多领域应用展现广阔前景
  • vue3中播放m3u8,附测试网址
  • 涨薪秘籍?40w年薪项目经理力荐,10个项目管理神器大放送!
  • quartz源码-Schedule启动过程分析
  • Java算法之LRUCache缓存实现
  • JVM面试(三)类加载过程