我一直在用C ++测试我的日志记录子系统的三个选项。一个是Log4cplus,一个是Pantheios,最后一个是我们自己编写的简单日志库。
Log4cplus比其他两个慢得多。以下是记录1,000,000个日志条目的结果:
我想知道我是否缺少任何性能调整。
我应该补充一点,我总是使用root logger,我正在登录文件并记录:
LOG4CPLUS_INFO(rootLogger, "Replace me with the text!");
感谢, 礼
答案 0 :(得分:12)
在log4cplus::NullAppender
中使用performance_test
在半载FreeBSD服务器上给我Logging 1000000 took: 4sec 343709usec
。 IOW,纯日志开销相当小。您的日志记录时间似乎取决于目标记录器。如果您使用的是log4cplus::FileAppender
,则时间会有很大差异。
编辑:
您需要稍微调整FileAppender
。确保将ImmediateFlush
属性设置为false。您还可以将BufferSize
设置为更大的值,例如1000000字节。