使用Tomcat 7降低Eclipse WTP中的日志级别

时间:2013-01-23 14:28:37

标签: eclipse tomcat logging eclipse-wtp

我在Eclipse WTP(Juno)中运行Tomcat 7,我似乎无法调低日志记录级别。它会记录调试中的所有内容,这些内容过于冗长而无法使用(我希望它从INFO中记录)。 logging.properties文件如下:

handlers =  java.util.logging.ConsoleHandler

.handlers = java.util.logging.ConsoleHandler

.level=INFO

############################################################
# Handler specific properties.
# Describes specific configuration info for Handlers.  
############################################################

java.util.logging.ConsoleHandler.level = INFO
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter

3 个答案:

答案 0 :(得分:7)

根据Tom Chatt引用的FAQ添加两者

-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
-Djava.util.logging.config.file="${workspace_loc}/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/conf/logging.properties"

到服务器启动配置的参数将为您提供所需的信息。 ${workspace_loc}是字面上的; Eclipse将用您的工作区目录替换它。 tmp0可能是tmp1或类似的;使用服务器配置中的相同路径。 当然,假设您已将logging.properties文件放在那里。 这样,您将在“服务器”下的“项目资源管理器”窗口中看到该文件。 您应该从Tomcat conf目录中复制一个。

这一切都假设您打算使用JULI。

使用Tomcat 8.0和Eclipse Mars为我工作。 不知道为什么它对汤姆不起作用。 我确实看到了ClassNotFound s,原因很明显,当我从某人的帖子中使用了错误的类名时。

我建议不要使用Tom Chatt的方法,因为这会影响该JVM的所有其他用途。

答案 1 :(得分:6)

我遇到了同样的问题,想要在Eclipse WTP中配置Tomcat 7的日志记录级别。我尝试将logging.properties放在我的web应用程序的/ src目录中。没有效果。我尝试修改Tomcat安装的/ conf目录中的logging.properties文件,但也没有效果。我发现了Eclipse WTP" shadow" Tomcat区域,在我的工作区目录下,位于.metadata / .plugins / org.eclipse.wst.server.core / tmp0中,并将logging.properties文件放在/ conf目录下。没效果。

我发现了一些文章(例如,this FAQ at eclipse.org),注意到Tomcat在现实生活中#34;使用名为" JULI"的日志记录管理器自动运行,由于某种原因,在Eclipse WTP内运行的Tomcat不能与JULI一起运行。我尝试添加

-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager

我的Tomcat运行配置中的VM args,但这只是让我得到ClassNotFound错误。 (是的,我的课程中确实有tomcat-juli.jar,所以不知道为什么它没有找到它。)

最后,我想到尝试修改jdk jre / lib中的logging.properties实例。大奖!事实证明,这是对Tomcat-in-Eclipse完成的日志记录产生影响的那个。因此,这个长篇故事的寓意是,如果你想要做的只是简单地配置日志,而你在Eclipse中运行,只需要一个简单的小语句:

myapp.mypackage.level=FINE

然后$ JAVAHOME / lib / logging.properties就可以了。

答案 2 :(得分:0)

为了解决这个问题,我遵循http://tomcat.apache.org/tomcat-7.0-doc/logging.html的tomcat log4j指南。这将使tomcat使用log4j。

接下来在$ CATALINA_HOME / lib中设置log4j配置。

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">


   <appender name="null" class="org.apache.log4j.varia.NullAppender" />

   <appender name="console" class="org.apache.log4j.ConsoleAppender">
    <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d %-5p [%c] %m%n" />
    </layout>
</appender>

<category name="org.package.domain">
    <priority value="INFO" />
    <appender-ref ref="console" />
 </category>

 </log4j:configuration>
相关问题