On 2009-03-16 20:27, Dale King wrote:
On Sun, Mar 15, 2009 at 4:00 PM, Rodolfo Gonzalez <rgonzale...@yahoo.com>wrote:
we had this new requirement to add some new unsupported fields in the log.

I don't know if this is the best way to do it works for us. Any alternative
approach will be highly appreciated.
>
I think you want a Mapped Diagnostic Context (MDC) which lets you add
name-value pairs in thread specific storage that you can access in the log.


That was my first thought too, but I was thinking of mostly static per-thread data or even per-app data that I just init before creating child threads. I wondered though, what about dynamic data like the time data from %r and %d. Sure I don't need %r and %d and could do the same by hand each call in my %m data, but I'm glad I don't have to. Knowing what the new unsupported fields were would help me decide if MDC would have been acceptable.

I got a copy of Rodolfo's code to get a better idea of what he is talking about. I don't have my head around all of it, but it looks clean and flexible. I still feel like I haven't caught the full vision yet. I am left wondering why w1-w3 formats have been reserved. Was it just to provide a testing facility as proof of concept? I also found myself wishing for a sample implementation that extends a the code with some dynamic runtime data not available in the PatternLayout and not appropriate for an MDC.

--
Jacob Anawalt
Gecko Software, Inc.
janaw...@geckosoftware.com
435-752-8026

Reply via email to