log4j-Appender-Schwellenwert und -Kategorie

Lassen Sie mich vorab sagen, dass Google erschöpft ist oder zumindest, wonach ich gesucht habe. "log4j threshold", "log4j threshold category", "log4j appender threshold category" usw. Aber ich verstehe die Ergebnisse, die ich von Google erhalte, nicht wirklich.

Dies ist die vollständige Konfiguration, die mir gegeben wurde. Ich kann nicht herausfinden, wie ich es an meine Bedürfnisse anpassen kann.

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

<!-- ===================================================================== -->
<!--                                                                       -->
<!--  Log4j Configuration                                                  -->
<!--                                                                       -->
<!-- ===================================================================== -->

<!-- $Id: jboss-log4j.xml 62403 2007-04-18 15:26:43Z [email protected] $ -->

<!--
| For more configuration infromation and examples see the Jakarta Log4j
| owebsite: http://jakarta.apache.org/log4j
 -->

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

<!-- ================================= -->
<!-- Preserve messages in a local file -->
<!-- ================================= -->

<appender name="FILE" class="org.jboss.logging.appender.DailyRollingFileAppender">
  <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
  <param name="File" value="${jboss.server.log.dir}/server.log"/>
  <param name="Append" value="false"/>

  <!-- Rollover at midnight each day -->
  <param name="DatePattern" value="'.'yyyy-MM-dd"/>

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


<!-- ============================== -->
<!-- Append messages to the console -->
<!-- ============================== -->

<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
  <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
  <param name="Target" value="System.out"/>
  <param name="Threshold" value="DEBUG"/>

  <layout class="org.apache.log4j.PatternLayout">
     <!-- The default pattern: Date Priority [Category] Message\n -->
     <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%c] %m%n"/>
  </layout>
</appender>



<!-- ================ -->
<!-- Limit categories -->
<!-- ================ -->

<category name="com.arjuna">
  <priority value="FATAL"/>
</category>   

<category name="com.sun.facelets">
  <priority value="ERROR"/>
</category>   

 <category name="jacorb">
   <priority value="FATAL"/>
 </category>

<category name="javax.enterprise.resource">
  <priority value="WARNING"/>
 </category>  

 <category name="javax.enterprise.resource.webcontainer.jsf">
    <priority value="WARNING"/>
 </category>  

 <category name="org.apache">
    <priority value="FATAL"/>
 </category>

 <category name="org.hibernate">
    <priority value="FATAL"/>
 </category>   

 <category name="org.jboss">
    <priority value="INFO"/>
 </category>

<category name="org.jboss.ejb3.EJB3Deployer">
    <priority value="WARNING" />
</category>

<category name="org.jboss.ejb3.JmxKernelAbstraction">
    <priority value="WARNING" />
</category>

<category name="org.jboss.management">
   <priority value="FATAL"/>
</category>

<category name="org.jboss.serial">
  <priority value="FATAL"/>
</category>

<category name="org.jboss.wsf.framework">
   <priority value="FATAL"/>
</category>   

<category name="org.jgroups">
   <priority value="FATAL"/>
</category>

<category name="org.quartz">
    <priority value="FATAL" />
</category>
<!-- ======================= -->
<!-- Setup the Root category -->
<!-- ======================= -->

<root>
   <appender-ref ref="CONSOLE"/>
   <appender-ref ref="FILE"/>
</root>



</log4j:configuration>
</code>

Ich verstehe nicht, wie die "Schwelle" des Appenders mit den Kategorien interagiert. Ich möchte nur, dass com.foo.bar-Nachrichten auf der Konsole angezeigt werden. Aber es sieht so aus, als ob ich viel mehr bekomme, zum Beispiel, wenn org.jboss.wsf.framework DEBUG-Nachrichten ausgibt, obwohl ich eine Kategorie mit einem dazu passenden Namen habe und auf FATAL setze.

Ich bin mir sicher, dass ich die richtige Konfigurationsdatei manipuliere, da jboss meldet, dass die Konfiguration neu geladen wird, nachdem ich sie geändert habe. Wie stelle ich die Kategorie / Schwellenwerte richtig ein? Was ist der Unterschied zwischen der Schwelle und der Kategorie?

Beispielausgabe (abgeschnitten). Warum wird Quarz auf der Konsole angezeigt, wenn FATAL eingestellt ist?

<code>2009-06-22 00:58:37,666 INFO  [org.quartz.plugins.history.LoggingJobHistoryPlugin] Job JobInitializationPlugin.JobInitializationPlugin_jobInitializer execution complete at  00:58:37 06/22/2009 and reports: null
2009-06-22 01:08:37,669 DEBUG [org.quartz.simpl.SimpleJobFactory] Producing instance of Job 'JobInitializationPlugin.JobInitializationPlugin_jobInitializer', class=org.quartz.jobs.FileScanJob
2009-06-23 15:44:17,790 INFO  [org.jboss.wsf.stack.jbws.NativeServerConfig] 3.0.5.GA
2009-06-23 15:44:17,868 DEBUG [org.jboss.wsf.framework.deployment.DeploymentAspectManagerImpl] setDeploymentAspects on WSDeploymentAspectManagerEJB
2009-06-23 15:44:17,868 DEBUG [org.jboss.wsf.framework.deployment.DeploymentAspectManagerImpl] setDeploymentAspects on WSDeploymentAspectManagerEndpointAPI
</code>

Antworten auf die Frage(2)

Ihre Antwort auf die Frage