通过set_pattern方法,我们指定了日志的格式,其中[%Y-%m-%d %H:%M:%S.%e]用于表示时间戳(包括年、月、日、时、分、秒和毫秒),[%^%l%$]用于表示日志级别(不同级别的日志会有不同的颜色显示),%v用于表示日志消息的内容。 这样,你就可以使用spdlog在日志信息中包含时间戳了。如果你有更多的自定义需求,比如...
如图创建两个sink,都将其绑定到logger上,于是logger可以输出日志到终端和文件上。 自定义pattern sink2被修改了输出格式。 %^:表示日志级别的起始颜色标记。这个占位符可以用于在彩色控制台输出中设置日志级别的颜色。 %l:表示日志级别的占位符。它将被替换为实际的日志级别,例如 "info"、"error" 等。 %$:表示日...
复制 #include"funset.hpp"#include<iostream>#include"spdlog/spdlog.h"#include"spdlog/fmt/ostr.h"namespace spd=spdlog;inttest_spdlog_console(){try{// Console logger with colorauto console=spd::stdout_color_mt("console");console->info("Welcome to spdlog!");console->error("Some error message...
spdlog::set_pattern("%+ [thread %t]");//设置输出格式直接打印spdlog::trace("This message shold not be displayed!"); spdlog::debug("This message shold not be displayed!"); 控制台带颜色输出 日志等级 enumlevel_enum{trace = SPDLOG_LEVEL_TRACE, debug = SPDLOG_LEVEL_DEBUG, info = SPDLOG_...
spdlog::set_pattern(logPattern); programName = program; //记录程序名 isUTF8BOM = utf8bom; logDirPath.clear(); logFilePath.clear(); //初始化控制台 setIsConsoleEnable(isConsoleEnable); Path inputDir = Path::forDirectory(logDir); //初始化文件日志 if (isFileEnable) { Path inputDir = ...
set_formatter(std::move(new_formatter));这行代码调用了set_formatter成员函数,将新创建的格式化器new_formatter设置为当前日志记录器的格式化器。 总的来说,set_pattern函数用于设置日志记录器的格式化模式,可以通过传入一个特定的模式字符串和一个时间格式来定制日志输出的格式。
Setting pattern globally like this doesn't work: spdlog::set_pattern("[%Y-%m-%d %H:%M:%S.%e] [%n] [%l] %v");
spdlog::set_pattern(pattern_string);// 示例spdlog::set_pattern("*** [%H:%M:%S %z] [thread %t] %v ***"); 或者实现自己的格式化器: spdlog::set_formatter(std::make_shared<my_custom_formatter>()); Pattern说明 输出格式的Pattern中可以有若干 %开头的标记,含义如下表: ...
set_pattern("[%n] [%*] [%^%l%$] %v"); spdlog::set_formatter(std::move(formatter)); } 基础函数说明 1.设置日志等级 代码语言:javascript 复制 //设置全局注册日志等级 spdlog::set_level(spdlog::level::info); // Set global log level to info //其他用法与设置日志样式相同 日志等级说明:...
voidspdlog::set_pattern(conststd::string&); voidspdlog::set_formatter(formatter_ptr); voidspdlog::set_error_handler(log_err_handler); 日志对象的大部分方法也是线程安全的,除了: voidspdlog::logger::set_pattern(conststd::string&); voidspdlog::logger::set_formatter(formatter_ptr); ...