【发布时间】:2018-09-12 11:56:20
【问题描述】:
我正在使用 spdlog 在 Visual Studio 项目中进行日志记录。我在 Qt creator 中使用了相同的项目,然后 spdlog 日志记录不输出任何内容。但 std::cout 仍然有效并打印到 Qt 创建者的应用程序输出窗口。
std::vector<spdlog::sink_ptr> sinks;
sinks.push_back(std::make_shared<spdlog::sinks::stdout_color_sink_mt>());
sinks.push_back(std::make_shared<spdlog::sinks::basic_file_sink_mt>("multisink.txt", true));
auto appLogger = std::make_shared<spdlog::logger>("appLogger", begin(sinks), end(sinks));
appLogger->set_level(spdlog::level::debug);
spdlog::register_logger(appLogger);
spdlog::flush_on(spdlog::level::debug);
appLogger->warn("this should appear in both console and file");
【问题讨论】:
-
你在运行程序时是否碰巧附加了调试器?
-
我用调试器运行,也没有调试器,两者都不输出spdlogging。
-
您是否有任何其他调试器/IDE 正在运行?也许平台调试输出(Windows 有一个)只能由一个接收器使用?
-
不,我目前只运行 Qt Creator。