logging-log4j-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jess Holle <je...@ptc.com>
Subject Re: JMX package
Date Mon, 10 Jul 2006 21:04:20 GMT
Jess Holle wrote:
> Curt Arnold wrote:
>> One things that seemed potentially interesting is to have a JMX 
>> appender that would allow log4j calls to generate JMX events.
> That would seem to be trivial.
>
> My approach has been to do any/all JMX notification in prior to and/or 
> in parallel to logging.  I do have JMX notification listeners that can 
> log the notification.
>
> To some degree, a log4j JMX notification appender seems like a 
> workaround for old code that really should be JMX instrumented and 
> doing notifications but which one does not own.  [For one thing, 
> though log4j allows the message to be an Object, which is very good, 
> the Object generally will not be a JMX open type (e.g. CompositeData 
> or TabularData), which JMX notification user data really should be -- 
> and thus it is probable that data structure loss will occur when a 
> general message Object is sent in a notification via logging -- at 
> least prior to Java 6 where more open-type conversion is automated.]  
> On the other hand, unless dealing in open source or doing consulting 
> your customers don't have your code, don't necessarily have the skill 
> to do the changes in any case, and may see needs for such 
> notifications that you cannot see initially.  For such cases, such an 
> appender seems like a very good thing.
>
> Dumb question along these lines: how does one reliably get the entire 
> MDC for a logging event, e.g. as a Map/Hashtable, from within an 
> appender?  I can see how to do everything else easily enough, but 
> that's one little nit.
I figured out the MDC stuff -- at least a reasonable if not foolproof 
approach -- and got everything working.  I did the code on company time, 
so I can't share it, but I can say that it is only about 400 lines total 
including the extra verbosity of shoving everything possible into the 
notification's user data as CompositeData and plenty of comments.

--
Jess Holle



Mime
View raw message