#include "spdlog/spdlog.h"
#include "spdlog/async.h"
#include "spdlog/cfg/env.h"
#include "spdlog/details/os.h"
#include "spdlog/sinks/stdout_color_sinks.h"
#include "spdlog/sinks/daily_file_sink.h"
auto stdout_sink = std::make_shared<spdlog::sinks::stdout_color_sink_mt>();
auto daily_sink = std::make_shared<spdlog::sinks::daily_file_sink_mt>("logs/mylog.log", 0, 0, false, 7);
std::initializer_list<spdlog::sink_ptr> sinks {stdout_sink, daily_sink};
spdlog::init_thread_pool(32 * 1024, 1); // queue with max 32k items 1 backing thread.
auto logger = std::make_shared<spdlog::async_logger>("", std::move(sinks), spdlog::thread_pool(), spdlog::async_overflow_policy::block);
auto pattern = spdlog::details::os::getenv("SPDLOG_PATTERN");
if (!pattern.empty()) {
spdlog::set_pattern(pattern);
}
//全局level默认为trace
spdlog::set_level(spdlog::level::level_enum::trace);
//加载日志级别环境变量
spdlog::cfg::load_env_levels();
//删除默认logger
spdlog::drop_all();
//初始化logger,例如级别、全局配置等,同时注册logger
spdlog::initialize_logger(logger);
//设置为默认logger
spdlog::set_default_logger(std::move(logger));
spdlog初始化
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。