};// null_mutex是空锁, lock/unlock操作并不会真正锁住线程using null_sink_mt = null_sink; using null_sink_st = null_sink; 有了具体的null_sink类型(null_sink_mt/null_sink_st),我们可以用工厂方法装配出logger对象。于是,spdlog提供便捷的创建sink为null_sink的logger对象的方式: // 便捷创建logger...
auto daily_sink = std::make_shared<spdlog::sinks::daily_file_sink_mt>("logfile",23,59); // 下面几个同步日志器共享的输出到目标文件 auto net_logger = std::make_shared<spdlog::logger>("net", daily_sink); auto hw_logger = std::make_shared<spdlog::logger>("hw", daily_sink); auto...
auto async_file = spdlog::basic_logger_mt<spdlog::async_factory>("async_file_logger", "logs/async_log.txt"); // alternatively: // auto async_file = spdlog::create_async<spdlog::sinks::basic_file_sink_mt>("async_file_logger", "logs/async_log.txt"); } 1. 2. 3. 4. 5. 6. 7...
auto logger = spdlog::rotating_logger_mt("some_logger_name", "logs/rotating.txt", max_size, max_files); } 每日文件 每天指定时间生成一个新的日志文件: #include "spdlog/sinks/daily_file_sink.h" void daily_example() { // Create a daily logger - a new file is created every day on 2...
具体路径为:/usr/local/include/spdlog/sinks/daily_file_sink.h 其中我使用的可以定点日切的源码为: template<typename Factory = spdlog::synchronous_factory>inline std::shared_ptr<logger> daily_logger_format_mt(const std::string &logger_name, const filename_t &filename, int hour = 0,int minute...
可每日生成日志文件daily_file_sink 每天定时产生文件日志 支持控制台日志输出 可选的异步日志 支持日志输出级别 可自定义日志格式 二.基本使用 1.直接打印日志到console auto console1 = spd::stdout_logger_mt("console1"); console1->error("Some error message with arg{}..", 1); //console2 的module...
daily_file_sink_mt>("logfile", 23, 59); // create synchronous loggers auto net_logger = std::make_shared<spdlog::logger>("net", daily_sink); auto hw_logger = std::make_shared<spdlog::logger>("hw", daily_sink); auto db_logger = std::make_shared<spdlog::logger>("db", daily_...
Daily files #include"spdlog/sinks/daily_file_sink.h"voiddaily_example() {//Create a daily logger - a new file is created every day at 2:30 amautologger =spdlog::daily_logger_mt("daily_logger","logs/daily.txt",2,30); } Backtrace support ...
比如daily_file_sink.h指向的是把不同的日期的日志分开记录的“工厂”,hourly_file_sink是把每小时的日志分开记录的“工厂”,mongo_sink.h是把日志写到mongo数据库的“工厂”,ratating_file_sink.h是把日志文件按大小或者条数分割的“工厂”。 需要导入相关的头文件才能实现具体的“工厂”。用相应的头文件里的函...
:sinks::daily_file_sink_mt>("logfile",23,59);//create synchronous loggersautonet_logger = std::make_shared<spdlog::logger>("net", daily_sink);autohw_logger = std::make_shared<spdlog::logger>("hw", daily_sink);autodb_logger = std::make_shared<spdlog::logger>("db", daily_sink);...