JBoss development,
A new message was posted in the thread "Log4j inside Jboss":
http://community.jboss.org/message/529364#529364
Author : Felipe Armoni
Profile :
http://community.jboss.org/people/komyg
Message:
--------------------------------------------------------------
Hi, I've created a Web Service application inside Jboss 4.2.2-GA and I want to set up
the jboss log4j configuration so that my Web Service logs inside a custom log file (not
inside the server.xml).
To do this I've altered the jboss-log4j.xml file to create another appender. This
file is below:
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE
log4j:configuration SYSTEM "log4j.dtd"><!--
=====================================================================
--><!--
--><!-- Log4j
Configuration
--><!--
--><!--
=====================================================================
--><!-- $Id: jboss-log4j.xml 65459 2007-09-19 00:25:51Z
mailto:dimitris@jboss.org $ --><!-- | 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 --> <!-- ================================= -->
<!-- A time/date based rolling appender --> <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"/> <!-- Rollover at the top of
each hour --> <layout
class="org.apache.log4j.PatternLayout"> <!-- The default
pattern: Date Priority Category Message\n --> <param
name="ConversionPattern" value="%d %-5p %m%n"/>
<!-- The full pattern: Date MS Priority Category (Thread:NDC) Message\n
<param name="ConversionPattern" value="%d %-5r %-5p (%t:%x)
%m%n"/> --> </layout>
</appender> <!-- A size based file rolling appender
<param name="ConversionPattern" value="%d %-5p
%m%n"/>
</layout>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</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="INFO"/> <layout
class="org.apache.log4j.PatternLayout"> <!-- The default
pattern: Date Priority Category Message\n --> <!-- <param
name="ConversionPattern" value="%d %-5p %m%n"/>
-->&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<param name="ConversionPattern" value="%-5p (%t:%x)
%m%n"/> </layout> </appender>
<!-- ====================== --> <!-- More Appender examples
--> <!-- ====================== --> <!-- Buffer events and
log them asynchronously <appender name="ASYNC"
class="org.apache.log4j.AsyncAppender"> <errorHandler
class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
<appender-ref ref="FILE"/> <appender-ref
ref="CONSOLE"/> <appender-ref ref="SMTP"/>
</appender> --> <!-- EMail events to an administrator
<appender name="SMTP"
class="org.apache.log4j.net.SMTPAppender"> <errorHandler
class="org.jboss.logging.util.OnlyOnceErrorHandler"/> <param
name="Threshold" value="ERROR"/> <param
name="To" value="mailto:admin@myhost.domain.com"/>
<param name="From"
value="mailto:nobody@myhost.domain.com"/> <param
name="Subject" value="JBoss Sever Errors"/> <param
name="SMTPHost" value="localhost"/> <param
name="BufferSize" value="10"/> <layout
class="org.apache.log4j.PatternLayout"> <param
name="ConversionPattern" value="[%d,%c] %m%n"/>
</layout> </appender> --> <!-- Syslog
events <appender name="SYSLOG"
class="org.apache.log4j.net.SyslogAppender"> <errorHandler
class="org.jboss.logging.util.OnlyOnceErrorHandler"/> <param
name="Facility" value="LOCAL7"/> <param
name="FacilityPrinting" value="true"/> <param
name="SyslogHost" value="localhost"/> <layout
class="org.apache.log4j.PatternLayout"> <param
name="ConversionPattern" value="[%d,%c] %m%n"/>
</layout> </appender> --> <!-- Log events
to JMS (requires a topic to be created) --> <!-- Log events through
SNMP --> <!-- Emit events as JMX notifications
<param name="ConversionPattern" value="%d %-5p
%m"/> </layout> </appender> -->
<!-- ================ --> <!-- Limit categories -->
<!-- ================ --> <!-- Limit the org.apache category to
INFO as its DEBUG is verbose --> <category
name="org.apache"> <priority
value="INFO"/> </category> <!-- Limit the jacorb
category to WARN as its INFO is verbose --> <category
name="jacorb"> <priority value="WARN"/>
</category> <!-- Limit the org.jgroups category to WARN as its
INFO is verbose --> <category name="org.jgroups">
<priority value="WARN"/> </category>
<!-- Limit the org.quartz category to INFO as its DEBUG is verbose -->
<category name="org.quartz"> <priority
value="INFO"/> </category> <!-- Limit JBoss
categories --> <!-- Limit the JSR77 categories -->
<category name="org.jboss.management"> <priority
value="INFO"/> </category> <!-- Show the
evolution of the DataSource pool in the logs inUse/Available/Max -->
<!-- Limit the org.jboss.serial (jboss-serialization) to INFO as its DEBUG is
verbose --> <category name="org.jboss.serial">
<priority value="INFO"/> </category>
<!-- Decrease the priority threshold for the org.jboss.varia category
--> <!-- Enable JBossWS message tracing --> <!--
| An example of enabling the custom TRACE level priority that is used | by the JBoss
internals to diagnose low level details. This example | turns on TRACE level msgs for
the org.jboss.ejb.plugins package and its | subpackages. This will produce A LOT of
logging output. | | Note: since jboss AS 4.2.x, the trace level is supported
natively by | log4j, so although the custom org.jboss.logging.XLevel priority
will | still work, there is no need to use it. The two examples that follow |
will both enable trace logging. --> <!-- | 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
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -->
<!-- Clustering logging --> <!-- Uncomment the following to
redirect the org.jgroups and org.jboss.ha categories to a cluster.log file.
<param name="ConversionPattern" value="%d %-5p
%m%n"/> --> <!-- Afis Appender -->
<appender name="AfisAppender"
class="org.jboss.logging.appender.DailyRollingFileAppender">
<errorHandler
class="org.jboss.logging.util.OnlyOnceErrorHandler"/> <param
name="File"
value="${jboss.server.log.dir}/afis_interface.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 (%t:%x) %m%n"/>
</layout> </appender> <category
name="AfisLogger">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<appender-ref
ref="AfisAppender"/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<appender-ref
ref="CONSOLE"/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<priority value="DEBUG"/> </category>
<!-- ======================= --> <!-- Setup the Root category
--> <!-- ======================= -->
After that I created a logger inside my Web Service with the same name as the category
tag and logged the message received by the service:
logger = Logger.getLogger("AfisLogger");
logger.debug(message);
However I noticed that even though the log file afis_interfaces.log is indeed created, it
remains empty as if I wasn't writing anything to it.
Please help me.
Thanks,
Komyg
--------------------------------------------------------------
To reply to this message visit the message page:
http://community.jboss.org/message/529364#529364