我正在尝试优化我的 c++ 程序。它使用咖啡。
执行我的程序时,caffe 每 15 分钟输出大约 1GB (!) 的信息日志。我怀疑这会显着影响效率。但是我还没有找到如何关闭注销。在这个问题中,有人建议FLAGS_v
手动设置。
使用以下代码,我可以VLOG
按级别禁用日志,但LOG(x)
日志不受影响。
中的第一行main()
:
FLAGS_v = 1; //disables vlog(2), vlog(3), vlog(4)
VLOG(0) << "Verbose 0";
VLOG(1) << "Verbose 1";
VLOG(2) << "Verbose 2";
VLOG(3) << "Verbose 3";
VLOG(4) << "Verbose 4";
LOG(INFO) << "LOG(INFO)";
LOG(WARNING) << "LOG(WARNING)";
LOG(ERROR) << "LOG(ERROR)";
输出:
WARNING: Logging before InitGoogleLogging() is written to STDERR
I0523 19:06:51.484634 14115 main.cpp:381] Verbose 0
I0523 19:06:51.484699 14115 main.cpp:382] Verbose 1
I0523 19:06:51.484705 14115 main.cpp:386] LOG(INFO)
W0523 19:06:51.484710 14115 main.cpp:387] LOG(WARNING)
E0523 19:06:51.484715 14115 main.cpp:388] LOG(ERROR)
还有一个flag
我不知道的吗?我正在考虑评论每一LOG(INFO)
行,但我想要一个更优雅的解决方案。(我更喜欢 C++ 解决方案而不是命令行标志解决方案)。