[jboss-cvs] JBossAS SVN: r91038 - in branches/dml-log-service-integration/server/src: etc/conf/all/xmdesc and 2 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Jul 9 23:15:23 EDT 2009


Author: david.lloyd at jboss.com
Date: 2009-07-09 23:15:22 -0400 (Thu, 09 Jul 2009)
New Revision: 91038

Added:
   branches/dml-log-service-integration/server/src/etc/deploy/jboss-logging.xml
Removed:
   branches/dml-log-service-integration/server/src/etc/conf/all/jboss-logging.xml
   branches/dml-log-service-integration/server/src/etc/conf/all/xmdesc/Log4jService-xmbean.xml
   branches/dml-log-service-integration/server/src/main/org/jboss/logging/Log4jService.java
   branches/dml-log-service-integration/server/src/main/org/jboss/logging/Log4jServiceMBean.java
Log:
Delete Log4j stuff; move jboss-logging.xml to deploy/ area

Deleted: branches/dml-log-service-integration/server/src/etc/conf/all/jboss-logging.xml
===================================================================
--- branches/dml-log-service-integration/server/src/etc/conf/all/jboss-logging.xml	2009-07-10 03:14:39 UTC (rev 91037)
+++ branches/dml-log-service-integration/server/src/etc/conf/all/jboss-logging.xml	2009-07-10 03:15:22 UTC (rev 91038)
@@ -1,657 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- ===================================================================== -->
-<!--                                                                       -->
-<!--  Logging System Configuration                                         -->
-<!--                                                                       -->
-<!-- ===================================================================== -->
-
-<logging xmlns="urn:jboss:logging:6.0" xmlns:b="urn:jboss:bean-deployer:2.0">
-
-   <!-- ================================= -->
-   <!-- Preserve messages in a local file -->
-   <!-- ================================= -->
-
-   <!-- A time/date based rolling handler -->
-
-   <periodic-rotating-file-handler
-         file-name="${jboss.server.log.dir}/server.log"
-         name="FILE"
-         autoflush="true"
-         append="true"
-         suffix=".yyyy-MM-dd">  <!-- To roll over at the top of each hour, use ".yyyy-MM-dd-HH" instead -->
-
-      <error-manager>
-         <only-once/>
-      </error-manager>
-
-      <formatter>
-         <pattern-formatter pattern="%d %-5p [%c] (%t) %m%n"/>
-      </formatter>
-   </periodic-rotating-file-handler>
-
-   <!-- A size based file rolling appender
-
-   <size-rotating-file-handler
-         file-name="${jboss.server.log.dir}/server.log"
-         name="FILE"
-         autoflush="true"
-         append="true"
-         rotate-size="500k"
-         max-backup-index="5">
-
-      <error-manager>
-         <only-once/>
-      </error-manager>
-
-      <formatter>
-         <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] %m%n"/>
-      </formatter>
-   </size-rotating-file-handler>
-   -->
-
-   <!-- ============================== -->
-   <!-- Append messages to the console -->
-   <!-- ============================== -->
-
-   <console-handler name="CONSOLE" autoflush="true" target="System.out">
-      <error-manager>
-         <only-once/>
-      </error-manager>
-
-      <level name="INFO"/>
-
-      <formatter>
-         <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] %m%n"/>
-      </formatter>
-   </console-handler>
-
-   <!-- ====================== -->
-   <!-- More Appender examples -->
-   <!-- ====================== -->
-
-   <!-- Buffer events and log them asynchronously
-
-   <async-handler name="ASYNC">
-      <error-manager>
-         <only-once/>
-      </error-manager>
-
-      <sub-handlers>
-         <handler-ref name="FILE"/>
-         <handler-ref name="CONSOLE"/>
-         <handler-ref name="SMTP"/>
-      </sub-handlers>
-   </async-handler>
-   -->
-
-   <!-- EMail events to an administrator
-
-   <log4j-appender name="SMTP" class="org.apache.log4j.net.SMTPAppender">
-      <error-manager>
-         <only-once/>
-      </error-manager>
-
-      <level name="ERROR"/>
-
-      <properties>
-         <property name="to">admin at myhost.domain.com</property>
-         <property name="from">nobody at myhost.domain.com</property>
-         <property name="subject">JBoss Sever Errors</property>
-         <property name="sMTPHost">localhost</property>
-         <property name="bufferSize">10</property>
-      </properties>
-
-      <formatter>
-         <pattern-formatter pattern="%d %-5p [%c] (%t) %m%n"/>
-      </formatter>
-   </log4j-appender>
-   -->
-
-   <!-- Syslog events
-
-   <log4j-appender name="SYSLOG" class="org.apache.log4j.net.SyslogAppender">
-      <error-manager>
-         <only-once/>
-      </error-manager>
-
-      <properties>
-         <property name="facility">LOCAL7</property>
-         <property name="facilityPrinting">true</property>
-         <property name="syslogHost">localhost</property>
-      </properties>
-
-      <formatter>
-         <pattern-formatter pattern="[%d,%c{1}] %m%n"/>
-      </formatter>
-   </log4j-appender>
-   -->
-
-   <!-- Log events to JMS (requires a topic to be created)
-
-   <log4j-appender name="JMS" class="org.apache.log4j.net.JMSAppender">
-      <error-manager>
-         <only-once/>
-      </error-manager>
-
-      <level name="ERROR"/>
-
-      <properties>
-         <property name="topicConnectionFactoryBindingName">
-            --><!-- Use injection so that an implicit dependency is formed - TODO: get the correct property name --><!--
-            <b:inject bean="myTopicBiding" property="name"/>
-         </property>
-         <property name="topicBindingName">topic/MyErrorsTopic</property>
-      </properties>
-   </log4j-appender>
-   -->
-
-   <!-- Log events through SNMP
-
-   <log4j-appender name="TRAP_LOG" class="org.apache.log4j.ext.SNMPTrapAppender">
-      <error-manager>
-         <only-once/>
-      </error-manager>
-
-      <level name="DEBUG"/>
-
-      <properties>
-         <property name="implementationClassName">org.apache.log4j.ext.JoeSNMPTrapSender</property>
-         <property name="managementHost">127.0.0.1</property>
-         <property name="managementHostTrapListenPort">162</property>
-         <property name="enterpriseOID">1.3.6.1.4.1.24.0</property>
-         <property name="localIPAddress">127.0.0.1</property>
-         <property name="localTrapSendPort">161</property>
-         <property name="genericTrapType">6</property>
-         <property name="specificTrapType">12345678</property>
-         <property name="communityString">public</property>
-         <property name="forwardStackTraceWithTrap">true</property>
-         <property name="applicationTrapOID">1.3.6.1.4.1.24.12.10.22.64</property>
-      </properties>
-      <formatter>
-         <pattern-formatter pattern="%d,%p,[%t],[%c],%m%n"/>
-      </formatter>
-   </log4j-appender>
-   -->
-
-   <!-- Emit events as JMX notifications
-
-   <log4j-appender name="JMX" class="org.jboss.monitor.services.JMXNotificationAppender">
-      <error-manager>
-         <only-once/>
-      </error-manager>
-
-      <level name="WARN"/>
-
-      <properties>
-         <property name="objectName">jboss.system:service=Logging,type=JMXNotificationAppender</property>
-      </properties>
-
-      <formatter>
-         <pattern-formatter pattern="%d %-5p [%c] %m"/>
-      </formatter>
-   </log4j-appender>
-   -->
-
-   <!-- Security AUDIT Appender
-
-   <periodic-rotating-file-handler
-         name="AUDIT"
-         autoflush="true"
-         file-name="${jboss.server.log.dir}/audit.log"
-         suffix=".yyyy-MM-dd"
-         append="true">
-
-      <error-manager>
-         <only-once/>
-      </error-manager>
-
-      <formatter>
-         <pattern-formatter pattern="%d %-5p [%c] (%t:%x) %m%n"/>
-      </formatter>
-   </periodic-rotating-file-handler>
-   -->
-
-   <!-- =============================================== -->
-   <!-- Limit categories                                -->
-   <!-- if enabling "trace" at root logger level,       -->
-   <!-- use limit category settings to disable trace    -->
-   <!-- for packages that you don't want to trace       -->
-   <!-- =============================================== -->
-
-   <!-- Limit the org.apache category to INFO as its DEBUG is verbose -->
-   <logger category="org.apache">
-      <level name="INFO"/>
-   </logger>
-
-   <!-- Limit the jacorb category to WARN as its INFO is verbose -->
-   <logger category="jacorb">
-      <level name="WARN"/>
-   </logger>
-
-   <!-- Limit JSF to INFO as its FINE is verbose -->
-   <logger category="javax.enterprise.resource.webcontainer.jsf">
-      <level name="INFO"/>
-   </logger>
-
-   <!-- Limit the org.jgroups category to WARN as its INFO is verbose -->
-   <logger category="org.jgroups">
-      <level name="WARN"/>
-   </logger>
-
-   <!-- Limit the org.quartz category to INFO as its DEBUG is verbose -->
-   <logger category="org.quartz">
-      <level name="INFO"/>
-   </logger>
-
-   <!-- Limit the com.sun category to INFO as its FINE is verbose -->
-   <logger category="com.sun">
-      <level name="INFO"/>
-   </logger>
-
-   <!-- Limit the sun category to INFO as its FINE is verbose -->
-   <logger category="sun">
-      <level name="INFO"/>
-   </logger>
-
-   <!-- Limit the javax.xml.bind category to INFO as its FINE is verbose -->
-   <logger category="javax.xml.bind">
-      <level name="INFO"/>
-   </logger>
-
-   <!-- Limit JBoss categories
-   <logger category="org.jboss">
-      <level name="INFO"/>
-   </logger>
-   -->
-
-   <!-- Or limit individual JBoss categories
-   <logger category="org.jboss.web">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.tm">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.jdbc">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.on">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.services">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.bootstrap">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.kernel">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.beans">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.injection">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.annotation">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.system">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.mx">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.jmx">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.invocation">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.classloader">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.classloading">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.deployment">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.deployers">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.dependency">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.metadata">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.detailed">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.logging">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.logbridge">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.aop">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.joinpoint">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.util">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.ha">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.resource">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.varia">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.net">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.security">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.console">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.wsf">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.ejb">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.ejb3">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.jpa">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.virtual">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.xb">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.naming">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.wsf">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.ws">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.mail">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.monitor">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.remoting">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.profileservice">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.cache">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.proxy">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.jms">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.messaging">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.webbeans">
-     <level name="INFO" />
-   </logger>
-
-   <logger category="org.jboss.managed">
-     <level name="INFO" />
-   </logger>
-   -->
-
-   <!-- Limit Arjuna transaction manager
-   <logger category="com.arjuna">
-     <level name="INFO" />
-   </logger>
-   -->
-
-   <!-- Limit Hibernate
-   <logger category="org.hibernate">
-     <level name="INFO" />
-   </logger>
-   -->
-
-   <!-- Limit Ajax4jsf
-   <logger category="org.ajax4jsf">
-     <level name="INFO" />
-   </logger>
-   -->
-
-   <!-- Limit JNP
-    <logger category="org.jnp">
-      <level name="INFO" />
-    </logger>
-   -->
-
-
-   <!-- Limit the JSR77 categories -->
-   <logger category="org.jboss.management">
-      <level name="INFO"/>
-   </logger>
-
-   <!-- Limit the verbose facelets compiler
-   <logger category="facelets.compiler">
-      <level name="WARN"/>
-   </logger>
-   -->
-
-   <!-- Limit the verbose ajax4jsf cache initialization
-   <logger category="org.ajax4jsf.cache">
-      <level name="WARN"/>
-   </logger>
-   -->
-   <!-- Limit the verbose embedded jopr categories
-   <logger category="org.rhq">
-      <level name="WARN"/>
-   </logger>
-   -->
-   <!-- Limit the verbose seam categories
-   <logger category="org.jboss.seam">
-      <level name="WARN"/>
-   </logger>
-   -->
-
-   <!-- Show the evolution of the DataSource pool in the logs [inUse/Available/Max]
-   <logger category="org.jboss.resource.connectionmanager.JBossManagedConnectionPool">
-     <level name="TRACE"/>
-   </logger>
-   -->
-
-   <!-- Category specifically for Security Audit Provider
-   <logger category="org.jboss.security.audit.providers.LogAuditProvider" additivity="false">
-     <level name="TRACE"/>
-     <appender-ref ref="AUDIT"/>
-   </logger>
-   -->
-
-   <!-- Limit the org.jboss.serial (jboss-serialization) to INFO as its DEBUG is verbose -->
-   <logger category="org.jboss.serial">
-      <level name="INFO"/>
-   </logger>
-
-   <!-- Decrease the priority threshold for the org.jboss.varia category
-   <logger category="org.jboss.varia">
-     <level name="DEBUG"/>
-   </logger>
-   -->
-
-   <!-- Enable JBossWS message tracing
-   <logger category="org.jboss.ws.core.MessageTrace">
-     <level name="TRACE"/>
-   </logger>
-   -->
-
-   <!-- Enable System log message tracing
-   <logger category="org.jboss.system">
-     <level name="TRACE"/>
-   </logger>
-   <logger category="org.jboss.ejb.plugins">
-     <level name="TRACE"/>
-   </logger>
-   -->
-
-   <!--
-       | Logs these events to SNMP:
-           - server starts/stops
-           - cluster evolution (node death/startup)
-           - When an EJB archive is deployed (and associated verified messages)
-           - When an EAR archive is deployed
-
-   <logger category="org.jboss.system.server.Server">
-      <level name="INFO"/>
-      <handlers>
-         <handler-ref name="TRAP_LOG"/>
-      </handlers>
-   </logger>
-
-   <logger category="org.jboss.ha.framework.interfaces.HAPartition.lifecycle">
-      <level name="INFO"/>
-      <handlers>
-         <handler-ref name="TRAP_LOG"/>
-      </handlers>
-   </logger>
-
-   <logger category="org.jboss.deployment.MainDeployer">
-      <level name="ERROR"/>
-      <handlers>
-         <handler-ref name="TRAP_LOG"/>
-      </handlers>
-   </logger>
-
-   <logger category="org.jboss.ejb.EJBDeployer">
-      <level name="INFO"/>
-      <handlers>
-         <handler-ref name="TRAP_LOG"/>
-      </handlers>
-   </logger>
-
-   <logger category="org.jboss.deployment.EARDeployer">
-      <level name="INFO"/>
-      <handlers>
-         <handler-ref name="TRAP_LOG"/>
-      </handlers>
-   </logger>
-   -->
-
-   <!-- Clustering logging -->
-   <!-- Uncomment the following to redirect the org.jgroups and
-      org.jboss.ha categories to a cluster.log file.
-
-   <size-rotating-file-handler
-         file-name="${jboss.server.log.dir}/cluster.log"
-         name="CLUSTER"
-         append="false"
-         rotate-size="500k"
-         max-backup-index="5"
-         autoflush="true">
-
-      <error-manager>
-         <only-once/>
-      </error-manager>
-
-      <formatter>
-         <pattern-formatter pattern="%d %-5p [%c] %m%n"/>
-      </formatter>
-   </size-rotating-file-handler>
-
-   <logger category="org.jgroups">
-      <level name="DEBUG" />
-      <handlers>
-         <handler-ref name="CLUSTER"/>
-      </handlers>
-   </logger>
-
-   <logger category="org.jboss.ha">
-      <level name="DEBUG" />
-      <handlers>
-         <handler-ref name="CLUSTER"/>
-      </handlers>
-   </logger>
-   -->
-
-   <!-- ======================= -->
-   <!-- Setup the Root category -->
-   <!-- ======================= -->
-
-   <root-logger>
-      <!-- Set the root logger priority via a system property, with a default value. -->
-      <level name="${jboss.server.log.threshold:DEBUG}"/>
-      <handlers>
-         <handler-ref name="CONSOLE"/>
-         <handler-ref name="FILE"/>
-      </handlers>
-   </root-logger>
-
-</logging>
\ No newline at end of file

Deleted: branches/dml-log-service-integration/server/src/etc/conf/all/xmdesc/Log4jService-xmbean.xml
===================================================================
--- branches/dml-log-service-integration/server/src/etc/conf/all/xmdesc/Log4jService-xmbean.xml	2009-07-10 03:14:39 UTC (rev 91037)
+++ branches/dml-log-service-integration/server/src/etc/conf/all/xmdesc/Log4jService-xmbean.xml	2009-07-10 03:15:22 UTC (rev 91038)
@@ -1,117 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mbean PUBLIC "-//JBoss//DTD JBOSS XMBEAN 1.1//EN"
-   "http://www.jboss.org/j2ee/dtd/jboss_xmbean_1_1.dtd" [
-	<!ATTLIST interceptor
-	proxyName CDATA #IMPLIED
->
-]>
-<!-- The Log4JService service XMBean
-$Id$
--->
-<mbean>
-	<description>
-	This MBean allows to get and set Log4j specific options.
-See also resource:log4j.xml
-   </description>
-	<class>org.jboss.logging.Log4jService</class>
-	<constructor>
-		<description>The default constructor</description>
-		<name>Log4jService</name>
-	</constructor>
-   
-   &defaultAttributes;
-
-   <attribute access="read-write" getMethod="getConfigurationURL" setMethod="setConfigurationURL">
-		<description>The URL of the log4j.xml config file.</description>
-		<name>ConfigurationURL</name>
-		<type>java.net.URL</type>
-	</attribute>
-	<attribute access="read-write" getMethod="getCatchSystemErr" setMethod="setCatchSystemErr">
-		<description>Should data writen to standard error be caught and integrated into the log output.</description>
-		<name>CatchSystemErr</name>
-		<type>boolean</type>
-	</attribute>
-	<attribute access="read-write" getMethod="getCatchSystemOut" setMethod="setCatchSystemOut">
-		<description>Should data writen to standard output be caught and integrated into the log output.</description>
-		<name>CatchSystemOut</name>
-		<type>boolean</type>
-	</attribute>
-	<attribute access="read-write" getMethod="getLog4jQuietMode" setMethod="setLog4jQuietMode">
-		<description>Sets the log4j quite mode. For log4j 1.2.8 this must stay on true.</description>
-		<name>Log4jQuietMode</name>
-		<type>boolean</type>
-	</attribute>
-	<attribute access="read-write" getMethod="getRefreshPeriod" setMethod="setRefreshPeriod">
-		<description>The time in seconds between checking for new config.</description>
-		<name>RefreshPeriod</name>
-		<type>int</type>
-	</attribute>
-   <attribute access="read-write" getMethod="getDefaultJBossServerLogThreshold" setMethod="setDefaultJBossServerLogThreshold">
-      <description>The value to assign to system property jboss.server.log.threshold
-           if it is not already set. This system property in turn controls
-           the logging threshold for the server.log file.</description>
-      <name>DefaultJBossServerLogThreshold</name>
-      <type>java.lang.String</type>
-   </attribute>
-	<!-- Operations -->
-	<operation>
-		<description>Displays the log level of a given logger.</description>
-		<name>getLoggerLevel</name>
-		<parameter>
-			<description>The name of the logger to display.</description>
-			<name>logger</name>
-			<type>java.lang.String</type>
-		</parameter>
-		<return-type>java.lang.String</return-type>
-	</operation>
-	<operation>
-		<description>Sets the log level for a given logger.</description>
-		<name>setLoggerLevel</name>
-		<parameter>
-			<description>The name of the logger to set.</description>
-			<name>logger</name>
-			<type>java.lang.String</type>
-		</parameter>
-		<parameter>
-			<description>The log level to set.</description>
-			<name>level</name>
-			<type>java.lang.String</type>
-		</parameter>
-		<return-type>void</return-type>
-	</operation>
-	<operation>
-		<description>Sets the levels of each logger specified by the given comma
-    seperated list of logger names.</description>
-		<name>setLoggerLevels</name>
-		<parameter>
-			<description>The list of loggers</description>
-			<name>loggers</name>
-			<type>java.lang.String</type>
-		</parameter>
-		<parameter>
-			<description>The log level to set</description>
-			<name>level</name>
-			<type>java.lang.String</type>
-		</parameter>
-		<return-type>void</return-type>
-	</operation>
-	<operation>
-		<description>Force the logging system to reconfigure.</description>
-		<name>reconfigure</name>
-		<return-type>void</return-type>
-	</operation>
-	<operation>
-		<description>Force the logging system to reconfigure with the given URL.</description>
-		<name>reconfigure</name>
-		<parameter>
-			<description>The url for the new configuration.</description>
-			<name>url</name>
-			<type>java.lang.String</type>
-		</parameter>
-		<return-type>void</return-type>
-	</operation>
-
-
-   &defaultOperations;   			
-
-</mbean>
\ No newline at end of file

Copied: branches/dml-log-service-integration/server/src/etc/deploy/jboss-logging.xml (from rev 91032, branches/dml-log-service-integration/server/src/etc/conf/all/jboss-logging.xml)
===================================================================
--- branches/dml-log-service-integration/server/src/etc/deploy/jboss-logging.xml	                        (rev 0)
+++ branches/dml-log-service-integration/server/src/etc/deploy/jboss-logging.xml	2009-07-10 03:15:22 UTC (rev 91038)
@@ -0,0 +1,657 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!-- ===================================================================== -->
+<!--                                                                       -->
+<!--  Logging System Configuration                                         -->
+<!--                                                                       -->
+<!-- ===================================================================== -->
+
+<logging xmlns="urn:jboss:logging:6.0" xmlns:b="urn:jboss:bean-deployer:2.0">
+
+   <!-- ================================= -->
+   <!-- Preserve messages in a local file -->
+   <!-- ================================= -->
+
+   <!-- A time/date based rolling handler -->
+
+   <periodic-rotating-file-handler
+         file-name="${jboss.server.log.dir}/server.log"
+         name="FILE"
+         autoflush="true"
+         append="true"
+         suffix=".yyyy-MM-dd">  <!-- To roll over at the top of each hour, use ".yyyy-MM-dd-HH" instead -->
+
+      <error-manager>
+         <only-once/>
+      </error-manager>
+
+      <formatter>
+         <pattern-formatter pattern="%d %-5p [%c] (%t) %m%n"/>
+      </formatter>
+   </periodic-rotating-file-handler>
+
+   <!-- A size based file rolling appender
+
+   <size-rotating-file-handler
+         file-name="${jboss.server.log.dir}/server.log"
+         name="FILE"
+         autoflush="true"
+         append="true"
+         rotate-size="500k"
+         max-backup-index="5">
+
+      <error-manager>
+         <only-once/>
+      </error-manager>
+
+      <formatter>
+         <pattern-formatter pattern="%d %-5p [%c] (%t) %m%n"/>
+      </formatter>
+   </size-rotating-file-handler>
+   -->
+
+   <!-- ============================== -->
+   <!-- Append messages to the console -->
+   <!-- ============================== -->
+
+   <console-handler name="CONSOLE" autoflush="true" target="System.out">
+      <error-manager>
+         <only-once/>
+      </error-manager>
+
+      <level name="INFO"/>
+
+      <formatter>
+         <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] %m%n"/>
+      </formatter>
+   </console-handler>
+
+   <!-- ====================== -->
+   <!-- More Appender examples -->
+   <!-- ====================== -->
+
+   <!-- Buffer events and log them asynchronously
+
+   <async-handler name="ASYNC">
+      <error-manager>
+         <only-once/>
+      </error-manager>
+
+      <sub-handlers>
+         <handler-ref name="FILE"/>
+         <handler-ref name="CONSOLE"/>
+         <handler-ref name="SMTP"/>
+      </sub-handlers>
+   </async-handler>
+   -->
+
+   <!-- EMail events to an administrator
+
+   <log4j-appender name="SMTP" class="org.apache.log4j.net.SMTPAppender">
+      <error-manager>
+         <only-once/>
+      </error-manager>
+
+      <level name="ERROR"/>
+
+      <properties>
+         <property name="to">admin at myhost.domain.com</property>
+         <property name="from">nobody at myhost.domain.com</property>
+         <property name="subject">JBoss Sever Errors</property>
+         <property name="sMTPHost">localhost</property>
+         <property name="bufferSize">10</property>
+      </properties>
+
+      <formatter>
+         <pattern-formatter pattern="%d %-5p [%c] (%t) %m%n"/>
+      </formatter>
+   </log4j-appender>
+   -->
+
+   <!-- Syslog events
+
+   <log4j-appender name="SYSLOG" class="org.apache.log4j.net.SyslogAppender">
+      <error-manager>
+         <only-once/>
+      </error-manager>
+
+      <properties>
+         <property name="facility">LOCAL7</property>
+         <property name="facilityPrinting">true</property>
+         <property name="syslogHost">localhost</property>
+      </properties>
+
+      <formatter>
+         <pattern-formatter pattern="[%d,%c{1}] %m%n"/>
+      </formatter>
+   </log4j-appender>
+   -->
+
+   <!-- Log events to JMS (requires a topic to be created)
+
+   <log4j-appender name="JMS" class="org.apache.log4j.net.JMSAppender">
+      <error-manager>
+         <only-once/>
+      </error-manager>
+
+      <level name="ERROR"/>
+
+      <properties>
+         <property name="topicConnectionFactoryBindingName">
+            --><!-- Use injection so that an implicit dependency is formed - TODO: get the correct property name --><!--
+            <b:inject bean="myTopicBiding" property="name"/>
+         </property>
+         <property name="topicBindingName">topic/MyErrorsTopic</property>
+      </properties>
+   </log4j-appender>
+   -->
+
+   <!-- Log events through SNMP
+
+   <log4j-appender name="TRAP_LOG" class="org.apache.log4j.ext.SNMPTrapAppender">
+      <error-manager>
+         <only-once/>
+      </error-manager>
+
+      <level name="DEBUG"/>
+
+      <properties>
+         <property name="implementationClassName">org.apache.log4j.ext.JoeSNMPTrapSender</property>
+         <property name="managementHost">127.0.0.1</property>
+         <property name="managementHostTrapListenPort">162</property>
+         <property name="enterpriseOID">1.3.6.1.4.1.24.0</property>
+         <property name="localIPAddress">127.0.0.1</property>
+         <property name="localTrapSendPort">161</property>
+         <property name="genericTrapType">6</property>
+         <property name="specificTrapType">12345678</property>
+         <property name="communityString">public</property>
+         <property name="forwardStackTraceWithTrap">true</property>
+         <property name="applicationTrapOID">1.3.6.1.4.1.24.12.10.22.64</property>
+      </properties>
+      <formatter>
+         <pattern-formatter pattern="%d,%p,[%t],[%c],%m%n"/>
+      </formatter>
+   </log4j-appender>
+   -->
+
+   <!-- Emit events as JMX notifications
+
+   <log4j-appender name="JMX" class="org.jboss.monitor.services.JMXNotificationAppender">
+      <error-manager>
+         <only-once/>
+      </error-manager>
+
+      <level name="WARN"/>
+
+      <properties>
+         <property name="objectName">jboss.system:service=Logging,type=JMXNotificationAppender</property>
+      </properties>
+
+      <formatter>
+         <pattern-formatter pattern="%d %-5p [%c] %m"/>
+      </formatter>
+   </log4j-appender>
+   -->
+
+   <!-- Security AUDIT Appender
+
+   <periodic-rotating-file-handler
+         name="AUDIT"
+         autoflush="true"
+         file-name="${jboss.server.log.dir}/audit.log"
+         suffix=".yyyy-MM-dd"
+         append="true">
+
+      <error-manager>
+         <only-once/>
+      </error-manager>
+
+      <formatter>
+         <pattern-formatter pattern="%d %-5p [%c] (%t:%x) %m%n"/>
+      </formatter>
+   </periodic-rotating-file-handler>
+   -->
+
+   <!-- =============================================== -->
+   <!-- Limit categories                                -->
+   <!-- if enabling "trace" at root logger level,       -->
+   <!-- use limit category settings to disable trace    -->
+   <!-- for packages that you don't want to trace       -->
+   <!-- =============================================== -->
+
+   <!-- Limit the org.apache category to INFO as its DEBUG is verbose -->
+   <logger category="org.apache">
+      <level name="INFO"/>
+   </logger>
+
+   <!-- Limit the jacorb category to WARN as its INFO is verbose -->
+   <logger category="jacorb">
+      <level name="WARN"/>
+   </logger>
+
+   <!-- Limit JSF to INFO as its FINE is verbose -->
+   <logger category="javax.enterprise.resource.webcontainer.jsf">
+      <level name="INFO"/>
+   </logger>
+
+   <!-- Limit the org.jgroups category to WARN as its INFO is verbose -->
+   <logger category="org.jgroups">
+      <level name="WARN"/>
+   </logger>
+
+   <!-- Limit the org.quartz category to INFO as its DEBUG is verbose -->
+   <logger category="org.quartz">
+      <level name="INFO"/>
+   </logger>
+
+   <!-- Limit the com.sun category to INFO as its FINE is verbose -->
+   <logger category="com.sun">
+      <level name="INFO"/>
+   </logger>
+
+   <!-- Limit the sun category to INFO as its FINE is verbose -->
+   <logger category="sun">
+      <level name="INFO"/>
+   </logger>
+
+   <!-- Limit the javax.xml.bind category to INFO as its FINE is verbose -->
+   <logger category="javax.xml.bind">
+      <level name="INFO"/>
+   </logger>
+
+   <!-- Limit JBoss categories
+   <logger category="org.jboss">
+      <level name="INFO"/>
+   </logger>
+   -->
+
+   <!-- Or limit individual JBoss categories
+   <logger category="org.jboss.web">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.tm">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.jdbc">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.on">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.services">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.bootstrap">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.kernel">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.beans">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.injection">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.annotation">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.system">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.mx">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.jmx">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.invocation">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.classloader">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.classloading">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.deployment">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.deployers">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.dependency">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.metadata">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.detailed">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.logging">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.logbridge">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.aop">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.joinpoint">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.util">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.ha">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.resource">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.varia">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.net">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.security">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.console">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.wsf">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.ejb">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.ejb3">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.jpa">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.virtual">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.xb">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.naming">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.wsf">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.ws">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.mail">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.monitor">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.remoting">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.profileservice">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.cache">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.proxy">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.jms">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.messaging">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.webbeans">
+     <level name="INFO" />
+   </logger>
+
+   <logger category="org.jboss.managed">
+     <level name="INFO" />
+   </logger>
+   -->
+
+   <!-- Limit Arjuna transaction manager
+   <logger category="com.arjuna">
+     <level name="INFO" />
+   </logger>
+   -->
+
+   <!-- Limit Hibernate
+   <logger category="org.hibernate">
+     <level name="INFO" />
+   </logger>
+   -->
+
+   <!-- Limit Ajax4jsf
+   <logger category="org.ajax4jsf">
+     <level name="INFO" />
+   </logger>
+   -->
+
+   <!-- Limit JNP
+    <logger category="org.jnp">
+      <level name="INFO" />
+    </logger>
+   -->
+
+
+   <!-- Limit the JSR77 categories -->
+   <logger category="org.jboss.management">
+      <level name="INFO"/>
+   </logger>
+
+   <!-- Limit the verbose facelets compiler
+   <logger category="facelets.compiler">
+      <level name="WARN"/>
+   </logger>
+   -->
+
+   <!-- Limit the verbose ajax4jsf cache initialization
+   <logger category="org.ajax4jsf.cache">
+      <level name="WARN"/>
+   </logger>
+   -->
+   <!-- Limit the verbose embedded jopr categories
+   <logger category="org.rhq">
+      <level name="WARN"/>
+   </logger>
+   -->
+   <!-- Limit the verbose seam categories
+   <logger category="org.jboss.seam">
+      <level name="WARN"/>
+   </logger>
+   -->
+
+   <!-- Show the evolution of the DataSource pool in the logs [inUse/Available/Max]
+   <logger category="org.jboss.resource.connectionmanager.JBossManagedConnectionPool">
+     <level name="TRACE"/>
+   </logger>
+   -->
+
+   <!-- Category specifically for Security Audit Provider
+   <logger category="org.jboss.security.audit.providers.LogAuditProvider" additivity="false">
+     <level name="TRACE"/>
+     <appender-ref ref="AUDIT"/>
+   </logger>
+   -->
+
+   <!-- Limit the org.jboss.serial (jboss-serialization) to INFO as its DEBUG is verbose -->
+   <logger category="org.jboss.serial">
+      <level name="INFO"/>
+   </logger>
+
+   <!-- Decrease the priority threshold for the org.jboss.varia category
+   <logger category="org.jboss.varia">
+     <level name="DEBUG"/>
+   </logger>
+   -->
+
+   <!-- Enable JBossWS message tracing
+   <logger category="org.jboss.ws.core.MessageTrace">
+     <level name="TRACE"/>
+   </logger>
+   -->
+
+   <!-- Enable System log message tracing
+   <logger category="org.jboss.system">
+     <level name="TRACE"/>
+   </logger>
+   <logger category="org.jboss.ejb.plugins">
+     <level name="TRACE"/>
+   </logger>
+   -->
+
+   <!--
+       | Logs these events to SNMP:
+           - server starts/stops
+           - cluster evolution (node death/startup)
+           - When an EJB archive is deployed (and associated verified messages)
+           - When an EAR archive is deployed
+
+   <logger category="org.jboss.system.server.Server">
+      <level name="INFO"/>
+      <handlers>
+         <handler-ref name="TRAP_LOG"/>
+      </handlers>
+   </logger>
+
+   <logger category="org.jboss.ha.framework.interfaces.HAPartition.lifecycle">
+      <level name="INFO"/>
+      <handlers>
+         <handler-ref name="TRAP_LOG"/>
+      </handlers>
+   </logger>
+
+   <logger category="org.jboss.deployment.MainDeployer">
+      <level name="ERROR"/>
+      <handlers>
+         <handler-ref name="TRAP_LOG"/>
+      </handlers>
+   </logger>
+
+   <logger category="org.jboss.ejb.EJBDeployer">
+      <level name="INFO"/>
+      <handlers>
+         <handler-ref name="TRAP_LOG"/>
+      </handlers>
+   </logger>
+
+   <logger category="org.jboss.deployment.EARDeployer">
+      <level name="INFO"/>
+      <handlers>
+         <handler-ref name="TRAP_LOG"/>
+      </handlers>
+   </logger>
+   -->
+
+   <!-- Clustering logging -->
+   <!-- Uncomment the following to redirect the org.jgroups and
+      org.jboss.ha categories to a cluster.log file.
+
+   <size-rotating-file-handler
+         file-name="${jboss.server.log.dir}/cluster.log"
+         name="CLUSTER"
+         append="false"
+         rotate-size="500k"
+         max-backup-index="5"
+         autoflush="true">
+
+      <error-manager>
+         <only-once/>
+      </error-manager>
+
+      <formatter>
+         <pattern-formatter pattern="%d %-5p [%c] %m%n"/>
+      </formatter>
+   </size-rotating-file-handler>
+
+   <logger category="org.jgroups">
+      <level name="DEBUG" />
+      <handlers>
+         <handler-ref name="CLUSTER"/>
+      </handlers>
+   </logger>
+
+   <logger category="org.jboss.ha">
+      <level name="DEBUG" />
+      <handlers>
+         <handler-ref name="CLUSTER"/>
+      </handlers>
+   </logger>
+   -->
+
+   <!-- ======================= -->
+   <!-- Setup the Root category -->
+   <!-- ======================= -->
+
+   <root-logger>
+      <!-- Set the root logger priority via a system property, with a default value. -->
+      <level name="${jboss.server.log.threshold:DEBUG}"/>
+      <handlers>
+         <handler-ref name="CONSOLE"/>
+         <handler-ref name="FILE"/>
+      </handlers>
+   </root-logger>
+
+</logging>
\ No newline at end of file

Deleted: branches/dml-log-service-integration/server/src/main/org/jboss/logging/Log4jService.java
===================================================================
--- branches/dml-log-service-integration/server/src/main/org/jboss/logging/Log4jService.java	2009-07-10 03:14:39 UTC (rev 91037)
+++ branches/dml-log-service-integration/server/src/main/org/jboss/logging/Log4jService.java	2009-07-10 03:15:22 UTC (rev 91038)
@@ -1,719 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.logging;
-
-import java.io.IOException;
-import java.io.PrintStream;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.net.URLConnection;
-import java.util.StringTokenizer;
-import java.util.Timer;
-import java.util.TimerTask;
-
-import javax.management.MBeanServer;
-import javax.management.MalformedObjectNameException;
-import javax.management.Notification;
-import javax.management.ObjectName;
-
-import org.apache.log4j.Level;
-import org.apache.log4j.PropertyConfigurator;
-import org.apache.log4j.helpers.LogLog;
-import org.apache.log4j.xml.DOMConfigurator;
-import org.jboss.logging.log4j.JDKLevel;
-import org.jboss.logging.util.LoggerStream;
-import org.jboss.logging.util.OnlyOnceErrorHandler;
-import org.jboss.system.ServiceMBeanSupport;
-import org.jboss.util.Strings;
-import org.jboss.util.ThrowableHandler;
-import org.jboss.util.ThrowableListener;
-import org.jboss.util.stream.Streams;
-
-/**
- * Initializes the Log4j logging framework.  Supports XML and standard
- * configuration file formats.  Defaults to using 'log4j.xml' read
- * from a system resource.
- *
- * <p>Sets up a {@link ThrowableListener} to adapt unhandled
- *    throwables to a logger.
- *
- * <p>Installs {@link LoggerStream} adapters for <tt>System.out</tt> and 
- *    <tt>System.err</tt> to catch and redirect calls to Log4j.
- *
- * @jmx:mbean name="jboss.system:type=Log4jService,service=Logging"
- *            extends="org.jboss.system.ServiceMBean"
- *
- * @version <tt>$Revision$</tt>
- * @author <a href="mailto:phox at galactica.it">Fulco Muriglio</a>
- * @author <a href="mailto:Scott_Stark at displayscape.com">Scott Stark</a>
- * @author <a href="mailto:davidjencks at earthlink.net">David Jencks</a>
- * @author <a href="mailto:jason at planet57.com">Jason Dillon</a>
- * @author <a href="mailto:dimitris at jboss.org">Dimitris Andreadis</a>
- */
-public class Log4jService
-   extends ServiceMBeanSupport
-   implements Log4jServiceMBean
-{
-   /**
-    * The default url for the configuration file.  Reads the value
-    * from the system property <tt>org.jboss.logging.Log4jService.configURL</tt>
-    * or if that is not set defaults to <tt>resource:log4j.xml</tt>.
-    */
-   public static final String DEFAULT_URL =
-      System.getProperty(Log4jService.class.getName() + ".configURL", "resource:log4j.xml");
-
-   /**
-    * Default flag to enable/disable cacthing System.out.  Reads the value
-    * from the system property <tt>org.jboss.logging.Log4jService.catchSystemOut</tt>
-    * or if not set defaults to <tt>true</tt>.
-    */
-   public static final boolean CATCH_SYSTEM_OUT =      
-      getBoolean(Log4jService.class.getName() + ".catchSystemOut", true);
-
-   /**
-    * Default flag to enable/disable cacthing System.err.  Reads the value
-    * from the system property <tt>org.jboss.logging.Log4jService.catchSystemErr</tt>
-    * or if not set defaults to <tt>true</tt>.
-    */
-   public static final boolean CATCH_SYSTEM_ERR =
-      getBoolean(Log4jService.class.getName() + ".catchSystemErr", true);
-   
-   /** 
-    * Default value for system property {@link #JBOSS_SERVER_LOG_THRESHOLD_PROPERTY}
-    * if it is not otherwise configured.
-    */
-   public static final String DEFAULT_JBOSS_SERVER_LOG_THRESHOLD = "DEBUG";
-
-   /** Helper to get boolean value from system property or use default if not set. */
-   private static boolean getBoolean(String name, boolean defaultValue)
-   {
-      String value = System.getProperty(name, null);
-      if (value == null)
-         return defaultValue;
-      return new Boolean(value).booleanValue();
-   }
-   
-   /** The URL to the configuration file. */
-   private URL configURL;
-
-   /** The time in seconds between checking for new config. */
-   private int refreshPeriod;
-   
-   private ThrowableListenerLoggingAdapter throwableAdapter;
-
-   /** The previous value of System.out. */
-   private PrintStream out;
-
-   /** The previous value of System.err. */
-   private PrintStream err;
-
-   /**
-    * Flag to enable/disable adapting <tt>System.out</tt> to the
-    * <tt>STDOUT</tt> logger.
-    */   
-   private boolean catchSystemOut = CATCH_SYSTEM_OUT;
-
-   /**
-    * Flag to enable/disable adapting <tt>System.out</tt> to the
-    * <tt>STDERR</tt> logger.
-    */   
-   private boolean catchSystemErr = CATCH_SYSTEM_ERR;
-
-   /** The org.apache.log4j.helpers.LogLog.setQuietMode flag setting */
-   private boolean log4jQuietMode = true;
-   
-   private String defaultJBossServerLogLevel = DEFAULT_JBOSS_SERVER_LOG_THRESHOLD;
-
-   /** The URL watch timer (in daemon mode). */
-   private Timer timer;
-
-   /** The specialized timer task to watch our config file. */
-   private URLWatchTimerTask timerTask;
-
-   /**
-    * A flag to enable start/stop to work as expected,
-    * but still use create to init early.
-    */
-   private boolean initialized;
-  
-   /**
-    * Uses defaults.
-    *
-    * @jmx:managed-constructor
-    *
-    * @throws MalformedURLException    Could not create URL from default (propbably
-    *                                  a problem with overridden properties).
-    */
-   public Log4jService() throws MalformedURLException
-   {
-      this(DEFAULT_URL, 60);
-   }
-   
-   /**
-    * @jmx:managed-constructor
-    * 
-    * @param url    The configuration URL.
-    */
-   public Log4jService(final URL url)
-   {
-      this(url, 60);
-   }
-
-   /**
-    * @jmx:managed-constructor
-    * 
-    * @param url    The configuration URL.
-    */
-   public Log4jService(final String url) throws MalformedURLException
-   {
-      this(Strings.toURL(url), 60);
-   }
-   
-   /**
-    * @jmx:managed-constructor
-    * 
-    * @param url              The configuration URL.
-    * @param refreshPeriod    The refreshPeriod in seconds to wait between each check.
-    */
-   public Log4jService(final String url, final int refreshPeriod)
-      throws MalformedURLException
-   {
-      this(Strings.toURL(url), refreshPeriod);
-   }
-
-   /**
-    * @jmx:managed-constructor
-    * 
-    * @param url              The configuration URL.
-    * @param refreshPeriod    The refreshPeriod in seconds to wait between each check.
-    */
-   public Log4jService(final URL url, final int refreshPeriod)
-   {
-      this.configURL = url;
-      this.refreshPeriod = refreshPeriod;
-   }
-
-   /**
-    * Set the catch <tt>System.out</tt> flag.
-    *
-    * @jmx:managed-attribute
-    *
-    * @param flag    True to enable, false to disable.
-    */
-   public void setCatchSystemOut(final boolean flag)
-   {
-      this.catchSystemOut = flag;
-   }
-
-   /**
-    * Get the catch <tt>System.out</tt> flag.
-    *
-    * @jmx:managed-attribute
-    *
-    * @return  True if enabled, false if disabled.
-    */
-   public boolean getCatchSystemOut()
-   {
-      return catchSystemOut;
-   }
-
-   /**
-    * Set the catch <tt>System.err</tt> flag.
-    *
-    * @jmx:managed-attribute
-    *
-    * @param flag    True to enable, false to disable.
-    */
-   public void setCatchSystemErr(final boolean flag)
-   {
-      this.catchSystemErr = flag;
-   }
-
-   /**
-    * Get the catch <tt>System.err</tt> flag.
-    *
-    * @jmx:managed-attribute
-    *
-    * @return  True if enabled, false if disabled.
-    */
-   public boolean getCatchSystemErr()
-   {
-      return catchSystemErr;
-   }
-
-   /**
-    * Get the org.apache.log4j.helpers.LogLog.setQuietMode flag
-    *
-    * @jmx:managed-attribute
-    *
-    * @return  True if enabled, false if disabled.
-    */
-   public boolean getLog4jQuietMode()
-   {
-      return log4jQuietMode;
-   }
-   /**
-    * Set the org.apache.log4j.helpers.LogLog.setQuietMode flag
-    *
-    * @jmx:managed-attribute
-    *
-    * @return  True if enabled, false if disabled.
-    */
-   public void setLog4jQuietMode(boolean flag)
-   {
-      this.log4jQuietMode = flag;
-   }
-
-   /**
-    * Get the refresh period.
-    *
-    * @jmx:managed-attribute
-    */
-   public int getRefreshPeriod()
-   {
-      return refreshPeriod;
-   }
-
-   /**
-    * Set the refresh period.
-    *
-    * @jmx:managed-attribute
-    */
-   public void setRefreshPeriod(final int refreshPeriod)
-   {
-      this.refreshPeriod = refreshPeriod;
-   }
-   
-   /**
-    * Get the Log4j configuration URL.
-    *
-    * @jmx:managed-attribute
-    */
-   public URL getConfigurationURL()
-   {
-      return configURL;
-   }
-   
-   /**
-    * Set the Log4j configuration URL.
-    *
-    * @jmx:managed-attribute
-    */
-   public void setConfigurationURL(final URL url)
-   {
-      this.configURL = url;
-   }
-
-   /**
-    * {@inheritDoc}
-    *
-    * @jmx:managed-attribute
-    */
-   public String getDefaultJBossServerLogThreshold()
-   {
-      return defaultJBossServerLogLevel;
-   }
-
-   /**
-    * {@inheritDoc}
-    *
-    * @jmx:managed-attribute
-    */
-   public void setDefaultJBossServerLogThreshold(String level)
-   {
-      this.defaultJBossServerLogLevel = level;
-   }
-
-   /**
-    * Sets the level for a logger of the give name.
-    *
-    * <p>Values are trimmed before used.
-    *
-    * @jmx:managed-operation
-    *
-    * @param name        The name of the logger to change level
-    * @param levelName   The name of the level to change the logger to.
-    */
-   public void setLoggerLevel(final String name, final String levelName)
-   {
-      org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger(name.trim());      
-      Level level = JDKLevel.toLevel(levelName.trim());
-
-      logger.setLevel(level);
-      log.info("Level set to " + level + " for " + name);
-   }
-
-   /**
-    * Sets the levels of each logger specified by the given comma
-    * seperated list of logger names.
-    *
-    * @jmx:managed-operation
-    *
-    * @see #setLoggerLevel
-    *
-    * @param list        A comma seperated list of logger names.
-    * @param levelName   The name of the level to change the logger to.
-    */
-   public void setLoggerLevels(final String list, final String levelName)
-   {
-      StringTokenizer stok = new StringTokenizer(list, ",");
-      
-      while (stok.hasMoreTokens()) {
-         String name = stok.nextToken();
-         setLoggerLevel(name, levelName);
-      }
-   }
-   
-   /**
-    * Gets the level of the logger of the give name.
-    *
-    * @jmx:managed-operation
-    *
-    * @param name       The name of the logger to inspect.
-    */
-   public String getLoggerLevel(final String name)
-   {
-      org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger(name);
-      Level level = logger.getLevel();
-
-      if (level != null) 
-         return level.toString();
-
-      return null;
-   }
-
-   /**
-    * Force the logging system to reconfigure.
-    *
-    * @jmx:managed-operation
-    */
-   public void reconfigure() throws IOException
-   {
-      if (timerTask == null)
-         throw new IllegalStateException("Service stopped or not started");
-      
-      timerTask.reconfigure();
-   }
-
-   /**
-    * Hack to reconfigure and change the URL.  This is needed until we
-    * have a JMX HTML Adapter that can use PropertyEditor to coerce.
-    *
-    * @jmx:managed-operation
-    *
-    * @param url   The new configuration url
-    */
-   public void reconfigure(final String url) throws IOException, MalformedURLException
-   {
-      setConfigurationURL(Strings.toURL(url));
-      reconfigure();
-   }
-   
-   private void installSystemAdapters()
-   {
-      org.apache.log4j.Logger logger;
-
-      // Install catchers
-      if (catchSystemOut)
-      {
-         logger = org.apache.log4j.Logger.getLogger("STDOUT");
-         out = System.out;
-         System.setOut(new LoggerStream(logger, Level.INFO, out));
-         log.debug("Installed System.out adapter");
-      }
-      
-      if (catchSystemErr)
-      {
-         logger = org.apache.log4j.Logger.getLogger("STDERR");
-         err = System.err;
-         OnlyOnceErrorHandler.setOutput(err);
-         System.setErr(new LoggerStream(logger, Level.ERROR, err));
-         log.debug("Installed System.err adapter");
-      }
-   }
-
-   private void uninstallSystemAdapters()
-   {
-      // Remove System adapters
-      if (out != null)
-      {
-         System.out.flush();
-         System.setOut(out);
-         log.debug("Removed System.out adapter");
-         out = null;
-      }
-      
-      if (err != null)
-      {
-         System.err.flush();
-         System.setErr(err);
-         log.debug("Removed System.err adapter");
-         err = null;
-      }
-   }
-
-
-   ///////////////////////////////////////////////////////////////////////////
-   //                       Concrete Service Overrides                      //
-   ///////////////////////////////////////////////////////////////////////////
-
-   protected ObjectName getObjectName(MBeanServer server, ObjectName name)
-      throws MalformedObjectNameException
-   {
-      return name == null ? OBJECT_NAME : name;
-   }
-
-   private void setup() throws Exception
-   {
-      if (initialized) return;
-      
-      establishDefaultLoggingLevelSystemProperty();
-      
-      timerTask = new URLWatchTimerTask();
-      timerTask.run();
-	  timer = new Timer("Timer-" + getName(), true);
-      timer.schedule(timerTask, 1000 * refreshPeriod, 1000 * refreshPeriod);
-
-      // Make sure the root Logger has loaded
-      org.apache.log4j.Logger.getRootLogger();
-      
-      // Install listener for unhandled throwables to turn them into log messages
-      throwableAdapter = new ThrowableListenerLoggingAdapter();
-      ThrowableHandler.addThrowableListener(throwableAdapter);
-      log.debug("Added ThrowableListener: " + throwableAdapter);
-
-      initialized = true;
-   }
-
-   private void establishDefaultLoggingLevelSystemProperty()
-   {
-      try
-      {
-         if (defaultJBossServerLogLevel != null 
-               && SysPropertyActions.getProperty(JBOSS_SERVER_LOG_THRESHOLD_PROPERTY, null) == null)
-         {
-            SysPropertyActions.setProperty(JBOSS_SERVER_LOG_THRESHOLD_PROPERTY, 
-                                           defaultJBossServerLogLevel);
-         }
-      }
-      catch (SecurityException e)
-      {
-         log.warn("Cannot configure system property " + JBOSS_SERVER_LOG_THRESHOLD_PROPERTY +
-                  " -- " + e.getLocalizedMessage());
-      }
-      
-   }
-
-   protected void createService() throws Exception
-   {
-      setup();
-   }
-
-   protected void startService() throws Exception
-   {
-      setup();
-   }
-   
-   protected void stopService() throws Exception
-   {
-	  timer.cancel();
-	  timer = null;
-      timerTask.cancel();
-      timerTask = null;
-      
-      // Remove throwable adapter
-      ThrowableHandler.removeThrowableListener(throwableAdapter);
-      throwableAdapter = null;
-
-      uninstallSystemAdapters();
-
-      // allow start to re-initalize
-      initialized = false;
-   }
-
-   protected void emitReconfigureNotification()
-   {
-      // emit a reconfigure notification with the configURL
-      Notification n = new Notification(RECONFIGURE_NOTIFICATION_TYPE,
-            this, getNextNotificationSequenceNumber(), "Log4j subsystem reconfigured");
-      n.setUserData(configURL);
-      
-      super.sendNotification(n);
-   }
-   
-   ///////////////////////////////////////////////////////////////////////////
-   //                       ThrowableListener Adapter                      //
-   ///////////////////////////////////////////////////////////////////////////
-   
-   /**
-    * Adapts ThrowableHandler to the Loggger interface.  Using nested 
-    * class instead of anoynmous class for better logger naming.
-    */
-   private static class ThrowableListenerLoggingAdapter
-      implements ThrowableListener
-   {
-      private Logger log = Logger.getLogger(ThrowableListenerLoggingAdapter.class);
-      
-      public void onThrowable(int type, Throwable t)
-      {
-         switch (type)
-         {
-             default:
-                // if type is not valid then make it any error
-             
-             case ThrowableHandler.Type.ERROR:
-                log.error("Unhandled Throwable", t);
-                break;
-             
-             case ThrowableHandler.Type.WARNING:
-                log.warn("Unhandled Throwable", t);
-                break;
-             
-             case ThrowableHandler.Type.UNKNOWN:
-                // these could be red-herrings, so log them as trace
-                log.trace("Ynhandled Throwable; status is unknown", t);
-                break;
-         }
-      }
-   }
-
-
-   ///////////////////////////////////////////////////////////////////////////
-   //                         URL Watching Timer Task                       //
-   ///////////////////////////////////////////////////////////////////////////
-   
-   /**
-    * A timer task to check when a URL changes (based on 
-    * last modified time) and reconfigure Log4j.
-    */
-   private class URLWatchTimerTask
-      extends TimerTask
-   {
-      private Logger log = Logger.getLogger(URLWatchTimerTask.class);
-
-      private long lastConfigured = -1;
-
-      public void run()
-      {
-         log.trace("Checking if configuration changed");
-
-         boolean trace = log.isTraceEnabled();
-         
-         try
-         {
-            URLConnection conn = configURL.openConnection();
-            if (trace)
-               log.trace("connection: " + conn);
-
-            long lastModified = conn.getLastModified();
-            if (trace)
-            {
-               log.trace("last configured: " + lastConfigured);
-               log.trace("last modified: " + lastModified);
-            }
-
-            if (lastConfigured < lastModified)
-            {
-               reconfigure(conn);
-            }
-         }
-         catch (Exception e)
-         {
-            log.warn("Failed to check URL: " + configURL, e);
-         }
-      }
-
-      public void reconfigure() throws IOException
-      {
-         URLConnection conn = configURL.openConnection();
-         reconfigure(conn);
-      }
-
-      private void reconfigure(final URLConnection conn) 
-      {
-         log.info("Configuring from URL: " + configURL);
-         
-         boolean xml = false;
-         boolean trace = log.isTraceEnabled();
-         
-         // check if the url is xml
-         String contentType = conn.getContentType();
-         if (trace)
-            log.trace("content type: " + contentType);
-         
-         if (contentType == null)
-         {
-            String filename = configURL.getFile().toLowerCase();
-            if (trace) log.trace("filename: " + filename);
-
-            xml = filename.endsWith(".xml");
-         }
-         else
-         {
-            xml = contentType.equalsIgnoreCase("text/xml");
-            xml |= contentType.equalsIgnoreCase("application/xml");
-         }
-         if (trace)
-            log.trace("reconfiguring; xml=" + xml);
-
-         // Dump our config if trace is enabled
-         if (trace)
-         {
-            try
-            {
-               java.io.InputStream is = conn.getInputStream();
-               Streams.copy(is, System.out);
-            }
-            catch (Exception e)
-            {
-               log.error("Failed to dump config", e);
-            }
-         }
-
-         // need to uninstall adapters to avoid problems
-         uninstallSystemAdapters();
-
-         if (xml)
-         {
-            DOMConfigurator.configure(configURL);
-         }
-         else
-         {
-            PropertyConfigurator.configure(configURL);
-         }
-
-         /* Set the LogLog.QuietMode. As of log4j1.2.8 this needs to be set to
-         avoid deadlock on exception at the appender level. See bug#696819.
-         */
-         LogLog.setQuietMode(log4jQuietMode);
-
-         // but make sure they get reinstalled again
-         installSystemAdapters();
-
-         // and then remember when we were last changed
-         lastConfigured = System.currentTimeMillis();
-         
-         // notify other mbeans that might be interested
-         emitReconfigureNotification();
-      }
-   }
-}

Deleted: branches/dml-log-service-integration/server/src/main/org/jboss/logging/Log4jServiceMBean.java
===================================================================
--- branches/dml-log-service-integration/server/src/main/org/jboss/logging/Log4jServiceMBean.java	2009-07-10 03:14:39 UTC (rev 91037)
+++ branches/dml-log-service-integration/server/src/main/org/jboss/logging/Log4jServiceMBean.java	2009-07-10 03:15:22 UTC (rev 91038)
@@ -1,134 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.logging;
-
-import java.io.IOException;
-import java.net.MalformedURLException;
-import java.net.URL;
-
-import javax.management.ObjectName;
-
-import org.jboss.mx.util.ObjectNameFactory;
-import org.jboss.system.ServiceMBean;
-
-/**
- * MBean interface.
- */
-public interface Log4jServiceMBean extends ServiceMBean
-{
-   /** The default object name */
-   ObjectName OBJECT_NAME = ObjectNameFactory.create("jboss.system:type=Log4jService,service=Logging");
-
-   /** Notification type used to indicate a log4j reconfiguration */
-   String RECONFIGURE_NOTIFICATION_TYPE = "jboss.logging.log4j.reconfigure";
-   
-   /** Name of system property used to control the logging threshold for the server.log file */
-   String JBOSS_SERVER_LOG_THRESHOLD_PROPERTY = "jboss.server.log.threshold";
-   
-   // Attributes ----------------------------------------------------
-   
-   /**
-    * The catch <tt>System.out</tt> flag.
-    * @param flag True to enable, false to disable.
-    */
-   void setCatchSystemOut(boolean flag);
-   boolean getCatchSystemOut();
-   
-   /**
-    * The catch <tt>System.err</tt> flag.
-    * @param flag True to enable, false to disable.
-    */
-   void setCatchSystemErr(boolean flag);
-   boolean getCatchSystemErr();
-
-   /**
-    * The org.apache.log4j.helpers.LogLog.setQuietMode flag
-    * @return True if enabled, false if disabled.
-    */
-   void setLog4jQuietMode(boolean flag);
-   boolean getLog4jQuietMode();
-   
-   /**
-    * The refresh period.
-    */
-   void setRefreshPeriod(int refreshPeriod);   
-   int getRefreshPeriod();
-
-   /**
-    * The Log4j configuration URL.
-    */
-   void setConfigurationURL(URL url);
-   URL getConfigurationURL();
-   
-   /**
-    * The value to assign to system property {@link #JBOSS_SERVER_LOG_THRESHOLD_PROPERTY}
-    * if it is not already set. This system property in turn controls
-    * the logging threshold for the server.log file.
-    * <p>
-    * If the system property is already set when this service is created,
-    * this value is ignored.
-    * </p>
-    */
-   void setDefaultJBossServerLogThreshold(String level);
-   String getDefaultJBossServerLogThreshold();
-   
-   // Operations ----------------------------------------------------
-   
-   /**
-    * Sets the level for a logger of the give name.
-    * <p>Values are trimmed before used.
-    * 
-    * @param name The name of the logger to change level
-    * @param levelName The name of the level to change the logger to.
-    */
-   void setLoggerLevel(String name, String levelName);
-
-   /**
-    * Sets the levels of each logger specified by the given comma seperated list of logger names.
-    * @see #setLoggerLevel
-    * 
-    * @param list A comma seperated list of logger names.
-    * @param levelName The name of the level to change the logger to.
-    */
-   void setLoggerLevels(String list, String levelName);
-
-   /**
-    * Gets the level of the logger of the give name.
-    * 
-    * @param name The name of the logger to inspect.
-    */
-   String getLoggerLevel(String name);
-
-   /**
-    * Force the logging system to reconfigure.
-    */
-   void reconfigure() throws IOException;
-
-   /**
-    * Hack to reconfigure and change the URL. This is needed until
-    * we have a JMX HTML Adapter that can use PropertyEditor to coerce.
-    * 
-    * @param url The new configuration url
-    */
-   void reconfigure(String url) throws IOException, MalformedURLException;
-
-}




More information about the jboss-cvs-commits mailing list