无法重定向Boost日志输出

时间:2017-03-14 17:30:06

标签: c++ boost

我无法从shell重定向Boost生成的日志。我们从一个成功登录到stdout的应用程序开始就足够了。

cjholmes$ ./my_application
[2017-03-14 10:21:16.920355] [0x00007fff79497300] [info]    Boost log severity set to trace
[2017-03-14 10:21:16.921071] [0x0000000101282000] [trace]   Adding "/Users/cjholmes/Desktop/idsconnector/ca/DigiCertHighAssuranceEVRootCA.pem"
[2017-03-14 10:21:16.921233] [0x0000000101282000] [trace]   Adding "/Users/cjholmes/Desktop/idsconnector/ca/DigiCertSHA2HighAssuranceServerCA.pem"

简单,对吗?所以我应该能够做到这一点:

cjholmes$ ./my_application > log.txt

没有输出发送到控制台(这是预期的),但是当我查看log.txt文件时,它是空的。 shell创建文件,但文件始终为空。

我也尝试了所有常用的重定向语法,但它们都不起作用。另外,我尝试使用std :: cout:

显式初始化日志
boost::log::add_console_log(std::cout);

我仍然得到相同的结果。我总是可以在控制台上获取日志数据,但是以某种方式重定向输出会丢失我的所有日​​志数据。

我错过了什么?

0 个答案:

没有答案