On May 25, 2005, at 6:01 PM, Mark Womack wrote:

- What happens in a tool like chainsaw that is receiving logging events from several sources, each of which could have their own custom Levels defined? I imagine this happens today when a developer extends log4j to support their
levels?

I took a quick look at the serialization code for LoggingEvent. I had expected that it had serialized Level but it actually reconstructs the object by calling toLevel on whatever class was actually used, so my previous code not work. If a custom level is sent over SocketAppender, Chainsaw has to have the same class on its classpath.

- What will happen if a library developer defines a set of custom levels they use in their library, and the library user defines their own set of custom levels, etc. All those levels are going to be resolved, etc? What if they both end up using the same name/key for the level? There just seems like there can be room for confusion and frustration here as the various
levels are resolved/reported.

Definitely.


- Are we sure that users want to be able to define ANY set of levels, or do they just want slightly more flexibility by having one more level like trace
to choose from?  I really think that there is something to be said for
having a predictable set of levels that is known across various
code/libraries. If it is too flexible, it is going to lead to confusion. I think there was a feeling that the jdk logging went overboard with FINE, FINER, FINEST and maybe just adding TRACE is good enough. But to allow any
arbitrary set of levels, I'm not so sure.

- Curt makes a good point about how to handle this in configuration files, but I'm sure it can be worked out. One should be able to define levels from
within the config file.  <level key="TRACE" value="3000"/>


Maybe we decide that once you depart from the stock levels, we don't go out of our way to preserve names. If you want to create 4998 levels between TRACE and DEBUG you are free to, but they might end up with labels like L7117 in Chainsaw.



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to