【问题标题】:Use of 'grails.logging.jul.usebridge' in grails config.groovy在 grails config.groovy 中使用“grails.logging.jul.usebridge”
【发布时间】:2012-08-29 06:52:00
【问题描述】:

我是log4j and sl4j 的新手,我使用的是 grails 2.0.4,在 config.groovy 中有一行

grails.logging.jul.usebridge = false 用于产品

&

grails.logging.jul.usebridge = true 用于开发

我关注了这个article,正如它所说,使用grails.logging.jul.usebridge是为了实现日志框架的交换逻辑,例如

  • log4j
  • java.util.logging
  • 公共日志记录
  • 回退

这是 config.groovy 中 grails.logging.jul.usebridge 的唯一用途,还是有其他用途 还有一个问题

1) 推荐用于生产环境的日志框架

【问题讨论】:

    标签: grails log4j slf4j grails-2.0 grails-config


    【解决方案1】:

    我绝对推荐您使用 Log4j。它没有依赖关系,并且在各种 Web 应用程序服务器中进行了测试(甚至包含)。您可以通过 Config.groovy 中的 DSL 或在生产环境中的单独配置文件中轻松配置它。

    commons-logging 和 SLF4J 都是 Log4j 的包装器,并在下面使用它。

    grails.logging.jul.usebridge = true 用于将 java.util.logging 通过 SLF4J,如 here 所述。

    【讨论】:

    • 需要注意的是,官方文档警告了在生产环境中使用grails.logging.jul.usebridge = true 的性能问题: * slf4j web site 和 * Grails web site
    • 请注意:SLF4J不是以任何方式、形状或形式的“log4j 包装器”。这些都是骗人的。 SLF4J 是一个日志 API,它具有 log4j 的绑定(如果您选择使用它),但也有许多其他东西的绑定:logback、JUL、JCL 等。
    • 正如@DavidRiccitelli 所说,它在我们的生产服务器上造成了严重的性能问题。将其设置为 false 即可解决问题。
    猜你喜欢
    • 1970-01-01
    • 2012-12-01
    • 2012-01-06
    • 1970-01-01
    • 2013-07-23
    • 1970-01-01
    • 1970-01-01
    • 2012-04-06
    • 1970-01-01
    相关资源
    最近更新 更多