logging-log4j-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ron Grabowski <rongrabow...@yahoo.com>
Subject Re: User-based logger level
Date Fri, 15 Jun 2012 13:59:01 GMT
Typo at the bottom of:


  <TiemFilter ...

 From: Ralph Goers <ralph.goers@dslextreme.com>
To: Log4J Users List <log4j-user@logging.apache.org> 
Sent: Tuesday, June 12, 2012 1:08 AM
Subject: Re: User-based logger level
In Log4j 2 the DynamicThresholdFilter can be specified a) globally (equivalent to Logback's
TurboFilter) b) on a Logger c) in the Appender Reference in a Logger and d) on an Appender. 
For your use case you could specify the DynamicThresholdFilter on each Logger and you would
get the effect you are describing.  See http://loggingtest.apache.org/log4j/2.x/manual/filters.html.
In the examples you will find an example of the four types on at least one of the documented


On Jun 11, 2012, at 7:59 PM, yong.li@agfa.com wrote:

> Thanks for all the nice replies. It's a good starting point for me. 
> We may need a bit more than out-of-the-box MDCFilter or 
> DynamicThresholdFilter, in that for different ejbs different users get the 
> DEBUG level. For example, for ejb1, user A gets DEBUG while user B gets 
> WARNING; for ejb2, user B gets DEBUG and user A get WARNING. My 
> understanding is that, for MDCFilter/DynamicThresholdFilter a user always 
> gets the same effective level for all loggers
> Of course, we can extend those filters to consider also the logger name. 
> However, we are a bit afraid of its performance overhead. The problem is 
> that, we cannot easily put logger names in a Map as what 
> DynamicThresholdFilter does, because the logger name can be a package name 
> (so we need to check if this name is a prefix of the fully qualified class 
> name of an EJB).
> Any good ideas? Am I missing something obvious?
> Kind Regards,
> Yong
> ceki <ceki@qos.ch> wrote on 06/11/2012 11:59:32 PM:
>> From: ceki <ceki@qos.ch>
>> To: Log4J Users List <log4j-user@logging.apache.org>
>> Date: 06/12/2012 12:00 AM
>> Subject: Re: User-based logger level
>> Yours is a text-book requirement:
>>  http://logback.qos.ch/reasonsToSwitch.html#filters
>> See the docs on MDCFilter at [1].
>> [1]  http://logback.qos.ch/manual/filters.html#TurboFilter
>> -- 
>> Ceki
>> http://twitter.com/#!/ceki
>> On 11.06.2012 11:55, yong.li@agfa.com wrote:
>>> Dear all,
>>> We're about to implement a logging strategy that for different users
>>> different effective logger level are used. In particular, we are doing
>>> EJB, and we have already pushed user info onto MDC to implement this
>>> strategy.
>>> By default, the system will run using the following example logger 
> levels
>>> for all users:
>>> root = INFO
>>> com.my.ejb1=WARNING
>>> com.my.ejb2=INFO // different ejbs may have different default levels
>>> ...
>>> When a system setting is enabled at runtime, we want to change
>>> com.my.ejb1=DEBUG, but only for a few selected users. That is, if user 
> A
>>> invokes ejb1, all ejb1 log messages with level>= DEBUG will be logged,
>>> while if another user B invokes ejb1, it uses the default setting, and
>>> only messages with level>= WARNING will be logged. (it also honors the
>>> logger hierarchy, that is if we want to change the level for a 
> package,
>>> all ejbs in that package behave in the same way)
>>> We will do this on our production systems, so performance is critical.
>>> What would be a good way to achieve this?
>>> Kind Regards,
>>> Yong
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
>> For additional commands, e-mail: log4j-user-help@logging.apache.org
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message