代码之家  ›  专栏  ›  技术社区  ›  Wouter Lievens

为从Maven运行的Jetty禁用日志记录

  •  2
  • Wouter Lievens  · 技术社区  · 15 年前

    我下载了一个需要从源代码构建的大型框架。该项目使用maven构建结构,并包含一个可以通过嵌入式码头查看的演示应用程序。Maven插件处理所有这些事情。

    但是,当我运行演示应用程序(使用mvn jetty:run)时,我不能真正使用它,因为出于某种原因,启用了调试级别的日志记录,并且应用程序大部分时间都在记录大量语句。响应能力几乎降低到零。

    框架(geomajas 1.5.0)似乎使用了slf4j,但我不知道它在哪里配置或在哪里可以关闭。

    欢迎有任何想法…谢谢!

    更新: 显然他们用的是logback。我找到了配置文件(logback.xml),在该文件中,我编辑了调试级别,并用错误替换了它们。

    为了确保更改能够传播,我清理了项目并重新构建了它。但问题仍然存在! 我手动查看了logback.xml文件 target 文件夹,它们已经更新。但我仍然能看到日志记录!

    更新2 我在7号窗口。

    4 回复  |  直到 15 年前
        1
  •  6
  •   Pascal Thivent    15 年前

    禁用日志记录的最简单和最直接的方法是使用nop binding .要执行此操作,请编辑 geomajas/geomajas-dojo-example/pom.xml 并将日志依赖项更改为:

        <!-- logging dependencies, delegate all to slf4j and use logback -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.5.8</version>
        </dependency>
        <dependency>
           <groupId>org.slf4j</groupId>
           <artifactId>slf4j-nop</artifactId>
           <version>1.5.8</version>
        </dependency>
    

    并运行 mvn jetty:run .

        2
  •  1
  •   simonlord    15 年前

    查看此SLF4J手册/概述 http://www.slf4j.org/manual.html 看起来您可以使用slf4j nop jar(slf4j-nop-1.5.10.jar)关闭所有日志记录。因此,您可能需要找到并用nop jar替换项目WEB-INF/lib文件夹中当前的slf4j实现jar。

    虽然很可能它使用的是log4j实现,但如果是这种情况,您需要找到log4j.xml或log4j.properties并编辑/删除它们。不过,它们可能很难找到——首先在WEB-INF/类中查找,然后在某种配置目录中查找将是一个很好的开始。

    编辑{ 有点难看,但如果您只想让它尽快启动和运行,您可以将stdout和stderr重定向到/dev/null,这会使它更快一些,因为它不会写入磁盘或控制台:

    MVN码头:运行>dev/null 2>&1 }

    高温高压

        3
  •  0
  •   cetnar    15 年前

    尝试找出log4j配置(如果用于日志记录),它可能是log4j.xml(或log4j.properties)文件。如果从类路径中删除此文件,则根本没有日志记录。如果您想降低日志的级别,请尝试注释掉这个文件中的一些日志记录部分,例如。

    <!--<logger name="org.hibernate">
        <level value="debug"/> 
        <appender-ref ref="hibernate-file"/>
    </logger>-->
    

    对于这个例子,org.hibernate包中的类没有日志。

        4
  •  0
  •   Joachim Van der Auwera    15 年前

    Geomajas使用Logback作为示例应用程序。可以使用src/main/resources中的logback.xml文件配置日志记录。

    关闭所有功能都可以使用如下配置文件完成:

    <configuration>
        <root>
            <level value="OFF"/>
        </root>
    </configuration>
    

    亲切的问候, 约阿希姆

    推荐文章