[logback-user] Problem with Logback.XML
BAKHTI Mohammed
onlymed at hotmail.com
Wed Jul 6 14:56:25 CEST 2011
Yes here is my logback.xml
<configuration>
<property name="InitialContextFactoryName" value="org.apache.activemq.jndi.ActiveMQInitialContextFactory" />
<property name="TopicConnectionFactoryBindingName" value="ConnectionFactory" />
<property file="src/main/resources/MyLogger.properties" />
<!--************************************************************************* -->
<!-- **************************** Appenders ******************************-->
<!--************************************************************************* -->
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%date{dd/mm/yyyy HH:mm:ss.SSS} %-5level %X{userId} %X{fluxId} ${MyLogger.application.name} %X{actionPath} %X{code} %X{actionId} %message %n</pattern>
</encoder>
</appender>
<appender name="JMSTrace" class="ch.qos.logback.classic.net.JMSTopicAppender">
<InitialContextFactoryName>${InitialContextFactoryName}</InitialContextFactoryName>
<ProviderURL>${MyLogger.jms.brokerURL}</ProviderURL>
<TopicConnectionFactoryBindingName>${TopicConnectionFactoryBindingName}</TopicConnectionFactoryBindingName>
<TopicBindingName>dynamicTopics/${MyLogger.jms.topic}</TopicBindingName>
<filter class="ch.qos.logback.core.filter.EvaluatorFilter">
<evaluator> <!-- defaults to type ch.qos.logback.classic.boolex.JaninoEventEvaluator -->
<expression>
(Level.ERROR.isGreaterOrEqual(event.getLevel()))
</expression>
</evaluator>
<OnMismatch>DENY</OnMismatch>
<OnMatch>NEUTRAL</OnMatch>
</filter>
</appender>
<!--Daily rolling ERROR_FILE file appender -->
<appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<FileNamePattern>${MyLogger.log.directory}/${MyLogger.application.name}_error.%exp{%d{yyyy-MM-dd_HHmm}}.log</FileNamePattern>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${MyLogger.log.directory}/${MyLogger.application.name}_error.%d{${MyLogger.log.rotation}}.log.zip</FileNamePattern>
</rollingPolicy>
<encoder>
<pattern>%date{dd/mm/yyyy HH:mm:ss.SSS} %-5level %X{userId} %X{fluxId} ${MyLogger.application.name} %X{actionPath} %X{code} %X{actionId} %message %n%replace(%caller){'Caller..', ''}</pattern>
</encoder>
<filter class="ch.qos.logback.core.filter.EvaluatorFilter">
<evaluator> <!-- defaults to type ch.qos.logback.classic.boolex.JaninoEventEvaluator -->
<expression>
(event.getLevel().isGreaterOrEqual(Level.WARN))
</expression>
</evaluator>
<OnMismatch>DENY</OnMismatch>
<OnMatch>NEUTRAL</OnMatch>
</filter>
</appender>
<!--Daily rolling AUDIT_FILE file appender -->
<appender name="AUDIT_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<FileNamePattern>${MyLogger.log.directory}/${MyLogger.application.name}_audit.%exp{%d{yyyy-MM-dd_HHmm}}.log</FileNamePattern>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${MyLogger.log.directory}/${MyLogger.application.name}_audit.%d{${MyLogger.log.rotation}}.log.zip</FileNamePattern>
</rollingPolicy>
<encoder>
<pattern>%date{dd/mm/yyyy HH:mm:ss.SSS} %X{msgId} %-5level %X{userId} %X{fluxId} ${MyLogger.application.name} %X{actionPath} %X{code} %X{actionId} %message %n</pattern>
</encoder>
<filter class="ch.qos.logback.core.filter.EvaluatorFilter">
<evaluator> <!-- defaults to type ch.qos.logback.classic.boolex.JaninoEventEvaluator -->
<expression>
(Level.INFO.equals(event.getLevel()))
</expression>
</evaluator>
<OnMismatch>DENY</OnMismatch>
<OnMatch>NEUTRAL</OnMatch>
</filter>
</appender>
<!--Daily rolling file DIAGNOSTIC_FILE appender -->
<appender name="DIAGNOSTIC_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<FileNamePattern>${MyLogger.log.directory}/${MyLogger.application.name}_diagnostic.log.%exp{%d{yyyy-MM-dd_HHmm}}.log</FileNamePattern>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${MyLogger.log.directory}/${MyLogger.application.name}_diagnostic.%d{${MyLogger.log.rotation}}.log.zip</FileNamePattern>
</rollingPolicy>
<encoder>
<pattern>%date{dd/mm/yyyy HH:mm:ss.SSS} %-5level %X{userId} %X{fluxId} ${MyLogger.application.name} %X{actionPath} %X{code} %X{actionId} %message %n</pattern>
</encoder>
<filter class="ch.qos.logback.core.filter.EvaluatorFilter">
<evaluator> <!-- defaults to type ch.qos.logback.classic.boolex.JaninoEventEvaluator -->
<expression>
(Level.ERROR.isGreaterOrEqual(event.getLevel()))
</expression>
</evaluator>
<OnMismatch>DENY</OnMismatch>
<OnMatch>NEUTRAL</OnMatch>
</filter>
</appender>
<!--*********************************************************************** -->
<!-- **************************** Loggers ******************************-->
<!--*********************************************************************** -->
<logger name="entr.logger.trace">
<level value="trace" />
<appender-ref ref="JMSTrace" />
</logger>
<logger name="entr.logger.application">
<level value="trace" />
<appender-ref ref="STDOUT" />
<appender-ref ref="AUDIT_FILE" />
<appender-ref ref="ERROR_FILE" />
<appender-ref ref="DIAGNOSTIC_FILE" />
</logger>
</configuration>
//this one is used to print application logs (all the standard logback functions : info, debug...)
applicationLogger = (Logger) LoggerFactory.getLogger("entr.logger.application");
// this one is used to send my own log functions : mytrace(field1, field2...) to jms
sentinelleLogger = (Logger) LoggerFactory.getLogger("entr.logger.trace");
and the idea is : the user has juste to use my static class the same way as logback . MyLogger.trace()..... or MyLogger.Mytrace(...)
Thanks for any help
> Date: Wed, 6 Jul 2011 12:02:01 +0200
> From: ceki at qos.ch
> To: logback-user at qos.ch
> Subject: Re: [logback-user] Problem with Logback.XML
>
> Hello Mohammed,
>
> Could you post a copy of your current logback.xml file? It'll be easier
> to talk about multi-step configuration once we have your logback.xml file.
>
> Cheers,
>
> On 05/07/2011 10:30 PM, BAKHTI Mohammed wrote:
> > Thanks
> >
> > I have already think about something like this but it's not really nice,
> > (if in the future i need to change smething i have to make changes in
> > java files)
> >
> > No one know about how to "exclude component from the default
> > configuration" or "multi-step configuration" as slf4j doccumentation said ?
> >
> > In slf4j they said :
> > The only way to obtain output from the listed loggers, is to isolate the
> > components invoking these loggers and to exclude them from the default
> > configuration. Both logback and log4j allow multi-step configuration. It
> > follows that the problematic components should be configured in a second
> > step separate from default configuration.
> >
> >
> >
> > ------------------------------------------------------------------------
> > To: onlymed at hotmail.com; logback-user at qos.ch
> > From: djt69 at comcast.net
> > Subject: Re: [logback-user] Problem with Logback.XML
> > Date: Mon, 4 Jul 2011 11:08:05 -0400
> >
> > The way I got around it with my filter was to create another class with
> > a static method that the filter called. The other class had a logger
> > instantiated and took care of the logging for the filter.
> >
> > Sent from my Verizon Wireless Phone
> >
> > ----- Reply message -----
> > From: "BAKHTI Mohammed" <onlymed at hotmail.com>
> > Date: Mon, Jul 4, 2011 9:47 am
> > Subject: [logback-user] Problem with Logback.XML
> > To: <djt69 at comcast.net>, <logback-user at qos.ch>
> >
> >
> > Thanks for the replay :
> >
> > so how can i deal with this ?
> >
> > In slf4j they said :
> > The only way to obtain output from the listed loggers, is to isolate the
> > components invoking these loggers and to exclude them from the default
> > configuration. Both logback and log4j allow multi-step configuration. It
> > follows that the problematic components should be configured in a second
> > step separate from default configuration.
> >
> > But i don't figure how ? what really i need to do.
> >
> > Thansk again for any help
> >
> >
> > ------------------------------------------------------------------------
> > To: onlymed at hotmail.com; logback-user at qos.ch
> > From: djt69 at comcast.net
> > Subject: Re: [logback-user] Problème with Logback.XML
> > Date: Mon, 4 Jul 2011 08:52:24 -0400
> >
> > If you instantiate a logger in a filter class you'll have the same
> > problem. The message is telling you that you can't use a logger in part
> > of Logback's init.
> >
> > Sent from my Verizon Wireless Phone
> >
> > ----- Reply message -----
> > From: "BAKHTI Mohammed" <onlymed at hotmail.com>
> > Date: Mon, Jul 4, 2011 3:31 am
> > Subject: [logback-user] Problème with Logback.XML
> > To: <logback-user at qos.ch>
> >
> > Hello,
> >
> > I just made an API abstraction above logback in order to add specific
> > functions in this api i haveall logback functions (juste overrided with
> > no changes) and add some other functions (with specific signature):
> >
> > I created then a file appender and a JMS appender in logback.xml
> > (nothing special)
> >
> > I am using activemq for jms MOM.
> >
> > The problem is then : when a run a test class with some methodes
> > invocation i see this message :
> >
> > SLF4J: The following loggers will not work becasue they were created
> > SLF4J: during the default configuration phase of the underlying logging
> > system.
> > SLF4J: See also http://www.slf4j.org/codes.html#substituteLogger
> > SLF4J: org.apache.activemq.ActiveMQPrefetchPolicy
> > SLF4J: org.apache.activemq.jndi.ReadOnlyContext
> > SLF4J: org.apache.activemq.transport.tcp.TcpTransportFactory
> > SLF4J: org.apache.activemq.util.ServiceSupport
> >
> > All user logs are logged as expected but i dont see any of activemq (or
> > other framework) logs .
> >
> > i have read the information in slf4j url but don't understund what they
> > mean and how to correct this problem in logback .
> >
> > Thanks for any help
> >
> >
> >
> _______________________________________________
> Logback-user mailing list
> Logback-user at qos.ch
> http://qos.ch/mailman/listinfo/logback-user
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://qos.ch/pipermail/logback-user/attachments/20110706/7a049b2d/attachment-0001.html>
More information about the Logback-user
mailing list