•explicitlogger(std::stringname) : 使用指定的名称和空接收器列表构造一个日志记录器。 • logger(std::stringname, sink_ptr single_sink) : 使用指定的名称和一个接收器构造一个日志记录器。 • logger(std::stringname, sinks_init_list sinks): 使用
voiddebug(format_string_t<Args...> fmt, Args &&... args); template<typename... Args> voidinfo(format_string_t<Args...> fmt, Args &&... args); template<typename... Args> voidwarn(format_string_t<Args...> fmt, Args &&... args); template<typename... Args> voiderror(format_str...
spdlog中字符串格式化使用fmt(https://github.com/fmtlib/fmt)库。 格式化方式:{ [arg_id] [: (format_spec | chrono_format_spec)] } arg_id:参数标识; 忽略(为空时),依次对应每一个参数; 索引(数字,从0开始),引用第几个索引; 名称,命名参数; format_spec:参数格式化方式(类型、对齐、填充等); For...
spdlog中字符串格式化使用fmt(https://github.com/fmtlib/fmt)库。 格式化方式:{ [arg_id] [: (format_spec | chrono_format_spec)] } arg_id:参数标识; 忽略(为空时),依次对应每一个参数; 索引(数字,从0开始),引用第几个索引; 名称,命名参数; format_spec:参数格式化方式(类型、对齐、填充等); For...
Args> void log(LogLevel level, const std::string& format, Args... args) { log_pool.enqueue([this, level, format, args...] { std::lock_guard<std::mutex> lock(log_mutex); auto log_entry = fmt::format("[{}] [{}] {}\n", currentDateTime(), toString(level), fmt::format(form...
void debug(format_string_t<Args...> fmt, Args &&... args); template<typename... Args> void info(format_string_t<Args...> fmt, Args &&... args); // ... private: std::string name_; std::vector<sink_ptr> sinks_; // ... }...
string eol = spdlog::details::os::default_eol);pattern_formatter(const pattern_formatter &other) = delete;pattern_formatter &operator=(const pattern_formatter &other) = delete;std::unique_ptr<formatter> clone() const override;void format(const details::log_msg &msg, memory_buf_t &dest) ...
只包含头文件 (spdlog/spdlog.h —> spdlog , spdlog/fmt/bundled/format.h —> pattern_formatter) 无需依赖第三方库 支持跨平台 –Linux/Windowson 32/64 bits 可每日生成日志文件daily_file_sink 每天定时产生文件日志 支持控制台日志输出 可选的异步日志 ...
3. Efficient Formatting: spdlog utilizes the fmt library for efficient string formatting, reducing the time required to format log messages. 4.3 spdlog 的性能特点 (Performance Characteristics of spdlog) spdlog 的性能特点使其在高性能应用中非常受欢迎: ...
spdlog跟大华SDK在Linux平台中,一起使用,会出现大量未定义的问题。究其原因是fmt\bundled\format.h文件中定义了 UINT和BOOL enumType{NONE,NAMED_ARG,// Integer types should go first,INT,UINT,LONG_LONG,ULONG_LONG,BOOL,CHAR,LAST_INTEGER_TYPE=CHAR,// followed by floating-point types.DOUBLE,LONG_DOUBLE...