Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Eclipse Tomcat logback控制台appender只遵循根级别,不遵循命名appender_Eclipse_Tomcat_Logback_Logback Classic - Fatal编程技术网

Eclipse Tomcat logback控制台appender只遵循根级别,不遵循命名appender

Eclipse Tomcat logback控制台appender只遵循根级别,不遵循命名appender,eclipse,tomcat,logback,logback-classic,Eclipse,Tomcat,Logback,Logback Classic,我在Eclipse中使用Tomcat。我最近升级到Neon,并在那里重新创建了我的Tomcat服务器配置。从那以后,我一直无法将我的web应用程序正确地记录到Eclipse控制台。具体地说,如果我在web应用程序appender中设置了信息级别,它们将成功地转到日志文件,但不会转到控制台 奇怪的是,只有当我将根级别从WARN更改为INFO时,控制台才会显示我的应用程序的INFO级别。但当然,这也把其他的一切都放在了信息上,这使得它不是很有用 我也通过logback发送所有Tomcat日志。对于启

我在Eclipse中使用Tomcat。我最近升级到Neon,并在那里重新创建了我的Tomcat服务器配置。从那以后,我一直无法将我的web应用程序正确地记录到Eclipse控制台。具体地说,如果我在web应用程序appender中设置了信息级别,它们将成功地转到日志文件,但不会转到控制台

奇怪的是,只有当我将根级别从WARN更改为INFO时,控制台才会显示我的应用程序的INFO级别。但当然,这也把其他的一切都放在了信息上,这使得它不是很有用

我也通过logback发送所有Tomcat日志。对于启动配置,我在参数中使用:

-Dcatalina.base=“C:\dev\eclipse\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0”-Dcatalina.home=“C:\dev\apache-tomcat-7.0.52”-Dwtp.deploy=“C:\dev\eclipse\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps”--Djava.annowed.dirs=“C:\dev\apache-tomcat-7.0.52\annowed”-Djava.util.logging.manager=“org.apache.juli.ClassLoaderLogManager”-Djava.util.logging.config.file=“C:/dev/apache-tomcat-7.0.52/conf/logging.properties”-Ddeployment.security.SSLv2Hello=false-Ddeployment.security.SSLv3=false-Ddeployment.security.TLSv1=true-Ddeployment.security.TLSv1=true-Dlogback.configurationFile=”C:/dev/apache-tomcat-7.0.52/lib/logback.xml“

在类路径中,我添加了
tomcatjuli.jar
jul-to-slf4j-1.7.25.jar

这是我的logback.xml:

<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="10 seconds">
 <!-- always a good idea to have an OnConsoleStatusListener    -->
 <statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" />  

    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level (%file:%line\) - %message%n</pattern>
        </encoder>
    </appender>

    <!-- Tomcat service output has been disabled so all stdout/stderr messages come here as well. -->
    <appender name="main" class="ch.qos.logback.core.rolling.RollingFileAppender">  -->
    <!--See also http://logback.qos.ch/manual/appenders.html#RollingFileAppender -->
        <File>C:/dev/apache-tomcat-7.0.52/logs/tomcat7.log</File>
        <Append>true</Append>
        <encoder>
            <Charset>UTF-8</Charset>
            <pattern>%5level [%thread] %date{ISO8601} %class{0}:%line %mdc{requestId} - %message %n%rootException</pattern>
        </encoder>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <maxHistory>10</maxHistory>
            <FileNamePattern>C:/dev/apache-tomcat-7.0.52/logs/tomcat7.%d{yyyy-MM-dd}.log</FileNamePattern>
        </rollingPolicy>
    </appender>

  <!-- If desired, we can create a class logger with additivity false to put that in its own log file -->

  <!-- be quiet -->
  <logger name="org.apache.struts2.util.TokenHelper" level="ERROR" />
  <logger name="org.dbunit.dataset.AbstractTableMetaData" level="ERROR"/>
  <logger name="org.springframework.mock.web.MockServletContext" level="ERROR"/>
  <logger name="org.w3c.tidy" level="OFF"/>
  <logger name="com.opensymphony.xwork2.DefaultActionProxy" level="ERROR"/>

  <!-- having issues with logging -->
  <logger name="ch.qos" level="DEBUG" />

  <logger name="com.mycompany.web.product.Catalog" level="INFO" />

  <root level="WARN">
    <appender-ref ref="CONSOLE"/>
    <appender-ref ref="main"/>
   </root>

</configuration>

%d{HH:mm:ss.SSS}[%thread]-5级(%file:%line\)-%message%n
-->
C:/dev/apache-tomcat-7.0.52/logs/tomcat7.log
真的
UTF-8
%5级别[%thread]%date{ISO8601}%class{0}:%line%mdc{requestId}-%message%n%rootException
10
C:/dev/apache-tomcat-7.0.52/logs/tomcat7.%d{yyyy-MM-dd}.log
下面是我在启动Tomcat时在Eclipse控制台中得到的输出:

20:01:06793 |-ch.qos.logback.classic.LoggerContext[default]中的信息-在[file:/C:/dev/apache-tomcat-7.0.52/lib/logback.xml]中找到资源[C:/dev/apache-tomcat-7.0.52/lib/logback.xml]
20:01:06938 |-ch.qos.logback.classic.joran.action.ConfigurationAction-debug属性中的信息未设置
20:01:06974 |-ch.qos.logback.classic.joran.action.ConfigurationAction中的信息-将扫描[文件:/C:/dev/apache-tomcat-7.0.52/lib/logback.xml]中的更改
20:01:06975 |-ch.qos.logback.classic.joran.action.ConfigurationAction中的信息-将ReconfigureOnChangeTask扫描周期设置为10秒
20:01:06980 |-ch.qos.logback.core.joran.action.statusListener中的信息-添加了[ch.qos.logback.core.status.OnConsolStatusListener]类型的状态侦听器
20:01:07017 |-ch.qos.logback.core.joran.action.AppenderAction中的信息-即将实例化[ch.qos.logback.core.ConsoleAppender]类型的appender
20:01:07023 |-ch.qos.logback.core.joran.action.AppenderAction中的信息-将appender命名为[控制台]
20:01:07032 |-ch.qos.logback.core.joran.action.NestedComplexPropertyIA中的信息-假定[encoder]属性的默认类型为[ch.qos.logback.classic.encoder.PatternLayoutCoder]
20:01:07079 |-ch.qos.logback.core.joran.action.AppenderAction中的信息-即将实例化[ch.qos.logback.core.rolling.RollingFileAppender]类型的appender
20:01:07083 |-ch.qos.logback.core.joran.action.AppenderAction中的信息-将appender命名为[main]
20:01:07086 |-ch.qos.logback.core.joran.action.NestedComplexPropertyIA中的信息-假定[encoder]属性的默认类型为[ch.qos.logback.classic.encoder.PatternLayoutCoder]
20:01:07100 |-c.q.l.core.rolling中的信息。TimeBasedRollingPolicy@391359742-不使用压缩
20:01:07103 |-c.q.l.core.rolling中的信息。TimeBasedRollingPolicy@391359742-将对活动文件使用模式C:/dev/apache-tomcat-7.0.52/logs/tomcat7.%d{yyyy-MM-dd}.log
20:01:07111 |-c.q.l.core.rolling.DefaultTimeBasedFileNamedTriggeringPolicy中的信息-日期模式是文件名模式“c:/dev/apache-tomcat-7.0.52/logs/tomcat7.%d{yyyyy-MM-dd}.log”中的“yyyy-MM-dd”。
20:01:07111 |-c.q.l.core.rolling.DefaultTimeBasedFileName和TriggeringPolicy中的信息-午夜时翻滚。
20:01:07119 |-c.q.l.core.rolling.DefaultTimeBasedFileName和TriggeringPolicy中的信息-将初始期间设置为2017年7月9日19:51:44美国东部夏令时
20:01:07124 |-ch.qos.logback.core.rolling.RollingFileAppender[main]中的信息-活动日志文件名:C:/dev/apache-tomcat-7.0.52/logs/tomcat7.log
20:01:07124 |-ch.qos.logback.core.rolling.RollingFileAppender[main]中的信息-文件属性设置为[C:/dev/apache-tomcat-7.0.52/logs/tomcat7.log]
20:01:07128 |-ch.qos.logback.classic.joran.action.LoggerAction中的信息-将记录器[org.apache.struts2.util.TokenHelper]的级别设置为错误
20:01:07128 |-ch.qos.logback.classic.joran.action.LoggerAction中的信息-将记录器[org.dbunit.dataset.AbstractTableMetaData]的级别设置为错误
20:01:07128 |-ch.qos.logback.classic.joran.action.LoggerAction中的信息-将记录器[org.springframework.mock.web.MockServletContext]的级别设置为错误
20:01:07128 |-ch.qos.logback.classic.joran.action.LoggerAction中的信息-将记录器[org.w3c.tidy]的级别设置为关闭
20:01:07128 |-ch.qos.logback.classic.joran.action.LoggerAction中的信息-将记录器[com.opensymphony.xwork2.DefaultActionProxy]的级别设置为错误
20:01:07129 |-ch.qos.logback.classic.joran.action.LoggerAction中的信息-设置要调试的记录器[ch.qos]的级别
20:01:07129 |-ch.qos.logback.classic.joran.action.LoggerAction中的信息-将记录器[com.sentrylink.web.product.Catalog]的级别设置为信息
20:01:07129 |-信息在ch。