等级spdlog::level
一共六个等级,通过如下进行设置(这种方式设置是全局的多个共享log,也可以不同的log分别设置,后设置的为准,如果在单个log设置后有进行全局设置,则所有的等级会被修改),默认是debug,以下按照顺序排列。
spdlog::set_level(spdlog::level::warn);
trace
debug
info
warn
error
critical
格式set_pattern
3. Custom formatting · gabime/spdlog Wiki · GitHubFast C++ logging library. Contribute to gabime/spdlog development by creating an account on GitHub.
https://github.com/gabime/spdlog/wiki/3.-Custom-formatting
spdlog::set_pattern("[%Y-%m-%d %H:%M:%S.%e][thread %t][%@,%!][%l] : %v");
如上输出代码所在文件以及方法需要使用SPDLOG_ERROR,等级根据设置走
刷新spdlog::flush_every
spdlog::flush_every(std::chrono::seconds(5));//每5s刷新一次,将缓存的日志写入目标
my_logger->flush_on(spdlog::level::err); 错误日志立刻刷新
默认log,set_default_logger
通过spdlog::info直接记录会在默认的日志中(格式也是默认的)
spdlog::set_default_logger(rotating_logger);
共享日志,可以使用名字注册,注册后通过名字拿
auto daily_sink = std::make_shared<spdlog::sinks::daily_file_sink_mt>("logs/logfile.txt", 23, 59);
auto net_logger = std::make_shared<spdlog::logger>("net", daily_sink);
spdlog::register_logger(net_logger);
spdlog::get("net")->info("sink demoe");