【问题标题】:How to prevent log output from Apache Commons Exec如何防止 Apache Commons Exec 的日志输出
【发布时间】:2011-03-01 13:36:46
【问题描述】:

我在 JBoss 4.2.3 的 Web 应用程序上使用 Apache Commons Exec。每当我调用 Apache Exec 时,它都会在日志中输出所有控制台输出,这是很多输出,它可以轻松地在生产环境中填充我的日志。如何防止打印此日志并仅显示错误日志?

问候

【问题讨论】:

    标签: java jboss apache-commons-exec


    【解决方案1】:

    在您的 web 应用程序的 log4j.properties 文件中,添加如下所示的一行...

    log4j.logger.org.apache.commons.exec=ERROR
    

    【讨论】:

    • 有没有办法限制文件大小呢?在更远的将来它仍然可以达到很大的规模。
    【解决方案2】:

    您还可以通过提供空流来禁用进程中的 stdout/stderr/stdin 流。这样,如果您确实对输出没有用处,则无需摆弄日志记录级别。

    executor.setStreamHandler(new PumpStreamHandler(null, null, null));
    

    【讨论】:

      【解决方案3】:

      您可以在应用服务器级别禁用日志记录。只需添加到jboss-log4j.xml 这样的行:

      <category name="org.apache.commons.exec">
        <priority value="ERROR"/>
      </category>
      

      【讨论】:

        猜你喜欢
        • 2011-11-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-10-28
        • 2011-06-27
        • 1970-01-01
        • 2021-08-18
        相关资源
        最近更新 更多