2010-11-26 29 views

回答

5

伐木确实会减慢速度。特别是写入文件非常缓慢。即使创建要记录的字符串的过程也会对性能产生负面影响。我强烈建议您关闭此日志记录。如果你的应用程序有问题,那么你最好在开发环境中调试而不是生产。

4

我同意@tzhx。我将只添加2点:

1)您可能希望根据日志语句的重要性,使用log.info,.warn,.error,然后在您的配置中进行调整,以便在您使用的生产中进行调整适用于不同软件包的级别。你可能会想要一些基线级别的日志记录,甚至在prod中。

2)绝对不要在产品中记录sql。如果您遇到问题,请在开发环境或您的qa环境中记录sql以确定问题。

1

同意以前的答案。通常我在生产中将日志级别设置为WARN或ERROR。如果您需要在运行时调整日志记录级别,则可以使用http://www.grails.org/plugin/runtime-logging插件。这允许您增加日志记录以追踪仅在生产中出现的问题。错误分析后,您可以将日志记录级别恢复到正常级别。

如果您的用例需要大量日志记录(例如,出于审计跟踪原因等),您应该有单独的光盘用于日志记录或登录到某个专用远程设备。

1

如前所述,如果将大量信息记录到文件中,可能会影响性能。 我建议你做到以下几点:

  1. 大多数的调试信息应包含在声明中像if (log.debugEnabled) log.debug "This is a debug log line"。请注意0​​的用法,如果您不希望在生产中对您的调试消息进行评估,则这一点很重要。
  2. 安装插件app-info。该插件允许您在运行时更改日志记录级别(例如从INFO到DEBUG),并且与运行时日志记录插件不同,它为您提供了用于调试的其他信息(配置属性,内存消耗...)
0

日志记录本身带有性能成本。

但是你知道什么可以真正毁了你的应用程序性能吗?控制台日志记录