Hi Folks,

I'm having the following problem with the LocationInfo class when using
subclasses of Category.  LocationInfo assumes a stack trace of the
following form.

org.apache.log4j.FileAppender.doAppender
org.apache.log4j.Category.callAppenders
org.apache.log4j.Category.log
callers.fully.qualified.classNames.methodName

It assumes the caller's method comes just after the last Category entry on
the stack.  In the case of a Category subclass, there are at least two
possibilities: the subclass overrides a logging method or it simply
overrides the forcedLog method.  In the former case the stack trace looks
like:

org.apache.log4j.Category.callAppenders
org.apache.log4j.SubCategory.forcedLog
org.apache.log4j.SubCategory.log
callers.fully.qualified.className

while in the later case it looks like

org.apache.log4j.Category.callAppenders
org.apache.log4j.SubCategory.forcedLog
org.apache.log4j.Category.log
callers.fully.qualified.className

In the former class, the Category instance's instanceFQN should be set to
SubCategory while in the later case it needs to be set to Category in order
for the %C and %M of the PatternLayout to work properly.  It would be nice
if this could somehow be made consistent.  I'm not sure what the answer is
other than for the extender to be aware of this circumstance and set or not
set the instanceFQN accordingly.

Paul Glezen
IT Specialist
WebSphere Engagement Team
Tel: 818 539 3321
[EMAIL PROTECTED]


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

Reply via email to