0

我知道日志记录会严重影响应用程序的性能。我想知道如果使用适当的 LoggingFilter 过滤所有日志记录,日志记录对应用程序性能的影响是否也会很明显。

我想知道这一点,因为我正在考虑在我的应用程序中实现日志记录,因为它可能非常有用,但不会以(可能)使其变慢为代价。

4

1 回答 1

2

AFAIK,日志记录通常(即通过您通常的Log4j实现)在单独的线程中完成,因此它实际上不会对您的性能产​​生太大影响。

在添加日志记录时,为了避免性能下降,我学会了在执行任何字符串连接以构建日志消息之前始终检查是否启用了适当的日志记录级别,即:

if(log.isInfoEnabled()) {
    log.info("This log message has some string concatenation " + loggedValue);
}

这样,如果将日志记录级别阈值设置为高于 INFO 的值,您将不会运行字符串连接。

于 2013-06-21T13:28:27.657 回答