[jboss-jira] [JBoss JIRA] Issue Comment Edited: (JBAS-8791) log4j-appender seems not working in jboss-logging (AS6 final)
David Lloyd (JIRA)
jira-events at lists.jboss.org
Fri Jan 7 11:30:18 EST 2011
[ https://issues.jboss.org/browse/JBAS-8791?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12574137#comment-12574137 ]
David Lloyd edited comment on JBAS-8791 at 1/7/11 11:29 AM:
------------------------------------------------------------
The problem stems from the fact that some errors in logging configuration are logged after the boot logging has already been disabled.
You may be able to get more information about the problem by keeping boot logging running even after the logging deployer starts up. To keep boot logging running, edit the file:
server/default/deployers/jboss-logging.deployer/META-INF/logmanager-jboss-beans.xml
(or server/all if you're using the all configuration, etc.) and change the line which reads:
<bean name="JBossLogService" class="org.jboss.logmanager.LogService" mode="On Demand"/>
to instead read:
<bean name="JBossLogService" class="java.lang.Object" mode="On Demand"/>
That should stop boot logging from being disabled and let you see the relevant stack trace(s).
was (Author: david.lloyd at jboss.com):
The problem stems from the fact that some errors in logging configuration are logged after the boot logging has already been disabled.
You may be able to get more information about the problem by keeping boot logging running even after the logging deployer starts up. To keep boot logging running, edit the file:
server/default/deployers/jboss-logging.deployer/META-INF/logmanager-jboss-beans.xml
(or server/all if you're using the all configuration, etc.) and change the line which reads:
<bean name="JBossLogService" class="org.jboss.logmanager.LogService" mode="On Demand"/>
to instead read:
<bean name="JBossLogService" class="java.lang.Object" mode="On Demand"/>
That should disable the boot logging and let you see the relevant stack trace(s).
> log4j-appender seems not working in jboss-logging (AS6 final)
> -------------------------------------------------------------
>
> Key: JBAS-8791
> URL: https://issues.jboss.org/browse/JBAS-8791
> Project: JBoss Application Server
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: Logging
> Affects Versions: 6.0.0.Final
> Reporter: Gregoire Botquin
> Assignee: David Lloyd
> Labels: jboss-logging, log4j, log4j-appender, logging
>
> We are using some custom logger based on log4j appenders. I made a jboss-logging.xml configuration but it seems that my log4j-appender doesn't log anything. I'm working in AS6 final version.
>
> I made an example with a standard log4j appender (neither working). The category "com.sample" should be managed by the log4jappender. Every second the bean should write something, but nothing happens, the log file is not even created. I tried with other log4j loggers/ custom loggers and no success.
>
> When activating CONSOLE handler the logs are correctly written in console, but when only using the log4j-appender nothing happens after server started.
> The configuration file seems correct (?), but can't unfortunately check it against a documentation yet.
> ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> <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>
> <!-- To revert back to simple stack traces without JAR versions, change "%E" to "%e" below. -->
> <!-- Uncomment this to get the class name in the log as well as the category
> <pattern-formatter pattern="%d %-5p [%c] %C{1} (%t) %s%E%n"/>
> -->
> <!-- Uncomment this to log without the class name in the log -->
> <pattern-formatter pattern="%d %-5p [%c] (%t) %s%E%n"/>
> </formatter>
> </periodic-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] %s%E%n"/>
> </formatter>
> </console-handler>
>
>
> <log4j-appender name="Log4jAppender" class="org.apache.log4j.DailyRollingFileAppender">
> <error-manager>
> <only-once/>
> </error-manager>
> <level name="DEBUG"/>
> <properties>
> <!-- <property name="directory">${jboss.server.log.dir}/</property> -->
> <property name="file">${jboss.server.log.dir}/log4j.log</property>
> <property name="append">true</property>
> <property name="datePattern">'.'yyyy-MM-dd</property>
> </properties>
> <formatter>
> <pattern-formatter pattern="%d %-5p [%c] %m%n"/>
> </formatter>
>
> </log4j-appender>
>
> <logger category="com.sample">
> <level name="DEBUG"/>
> <handlers>
> <handler-ref name="Log4jAppender"/>
> </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:INFO}"/>
> <handlers>
> <handler-ref name="Log4jAppender"/>
>
>
>
> <!--
> <handler-ref name="CONSOLE"/>
> <handler-ref name="FILE"/>
> -->
> </handlers>
> </root-logger>
>
> </logging>
> ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> package com.sample;
>
> import javax.ejb.Schedule;
> import javax.ejb.Stateless;
>
> import org.apache.log4j.Logger;
>
> //@Singleton
> @Stateless
> public class TestBean {
>
> public static final Logger LOG = Logger.getLogger(TestBean.class);
>
>
> public TestBean(){
> System.out.println("TestBean is instantiated and should write someting in the log file");
> LOG.info("This is information log");
> }
>
>
> @Schedule(second="*/1", minute="*",hour="*", persistent=false)
> public void writeSomething(){
> System.out.println("This should write something in the log file at scheduled times");
> LOG.info("This is scheduled information log");
> }
>
> }
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list