auto rotating_logger = spd::rotating_logger_mt("some_logger_name","logs/rotating.txt",256,2); //Customize msg format for all messagesspd::set_pattern("*** [%H:%M:%S %z] [thread %t] %v ***"); rotating_logger->info("This is another message with custom format");//Customize msg...
spdlog::critical("Support for int: {0:d}; hex: {0:x}; oct: {0:o}; bin: {0:b}", 42); spdlog::set_level(spdlog::level::debug); // Set global log level to debug spdlog::debug("This message should be displayed.."); // change log pattern spdlog::set_pattern("[%H:%M:%S ...
void spdlog::set_pattern(const std::string&); void spdlog::set_formatter(formatter_ptr); void spdlog::set_error_handler(log_err_handler); 日志对象的大部分方法也是线程安全的,除了以下三个: void spdlog::logger::set_pattern(const std::string&); void spdlog::logger::set_formatter(formatter_pt...
logger中主要包括: set_pattern(const std::string&):设置logger包含的所有sink的日志输出内容格式。 set_level(level_enum):设置logger日志输出最低等级,如果logger包含的sink没有设置日志等级的话,则会为其设置日志等级。 log(level_enum level,log_msg content):按照level等级进行输出content,logger其中日志输出最低...
sink_it_()方法用于实现将日志输出到目标的具体逻辑,flush_()用于实现将缓冲区中的日志消息输出到目标,set_pattern_()用于设置日志格式,set_formatter_()用于设置日志的格式化器。由于base_sink是一个抽象类,所以这些方法都是纯虚函数,需要在子类中实现。
SPDLOG_INLINE void logger::set_pattern(std::string pattern, pattern_time_type time_type) { auto new_formatter = details::make_unique<pattern_formatter>(std::move(pattern), time_type); set_formatter(std::move(new_formatter)); } // set formatting for the sinks in this logger. ...
1、set_pattern ⾃定义⽇志格式 官⽅参考:可以为所有的log制定格式,也可以为指定的log制定格式,注意下⾯代码中rotating_logger为指针变量。auto rotating_logger = spd::rotating_logger_mt("some_logger_name", "logs/rotating.txt", 256, 2);// Customize msg format for all messages spd::set_...
log->set_pattern("[%Y-%m-%d %H:%M:%S.%e] %^[%l]%$ [%t] [%s %!:%#] %v"); //设置当出发 err 或更严重的错误时立刻刷新日志到 disk log->flush_on(spdlog::level::err); //3秒刷新一次队列 spdlog::flush_every(std::chrono::seconds(3)); ...
Set_formatter #补充Set_pattern的功能 Spdlog的使用 安装 方法一 方法二 初级应用 把日志按默认格式输出到控制台,背后会按默认参数创建logger和register并完成注册。 创建logger Spdlog工厂方法创建 工厂方法的目的:屏蔽复杂的创建对象的流程。 工厂设计模式:有多个具体工厂类继承自一个抽象类,有多个具体产品类继承自另...
日志记录器(logger)是spdlog的核心,一个logger对象可以包含多个sink,调用logger的输出函数时,会触发所有sink对象的log(log_msg)函数进行日志输出。日志输出格式可自定义,通过set_pattern方法设置,如时间格式、日志级别、日志内容等。输出标记(flag)在日志输出时携带额外信息,如文件名、行号、函数名。