You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-user@logging.apache.org by "Hunter, Bryan" <Br...@OmniChoice.com> on 2002/01/29 19:29:04 UTC
setting a category's parent
Is there a way to explicity set a category's parent using the API? I don't
want to explicity put entries in my log4j.properties file for each class I
create a category for. This seems way too much work and unmanagable. I
want all my categories using the same Appender.
I've wrapped Category in my own class (this will also make it easier to move
to Log4J ver 1.2 where Category is deprecated). I'm using Log4J ver 1.1.3.
I want to have all my category's inherit appenders from a parent category
for my project, but I don't want them to inherit directly from the
rootCategory. I'm running Jboss and it uses Log4J for its logging
(resetting the rootCategory will affect Jboss' logging and I don't want to
change this). I want to set additive to false for my parent category (not
inherit appenders from rootCategory), then have all my child categorys have
additivity.
--
Bryan K. Hunter
bryan.hunter@omnichoice.com
Senior Software Engineer "Winning Decisions for you
and your Customers"
OmniChoice www.omnichoice.com
2570 Blvd. Of Generals, Suite 210 610-630-2103 ext. 135
Norristown, PA 19403 610-630-2117 (fax)
www.omnichoicesolutions.com
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>
Re: setting a category's parent
Posted by Eric George <zy...@placebosoft.com>.
I am having the same problem. I want the category hierarchy to follow
object ownership rather than class ancestry. For example, I want
objects of class A that are contained in container object X to have a
log category of X.A and objects of the same class that are contained in
container Y to have category Y.A.
My solution to this problem was to create a LogFactory which takes two
strings, the name of the parent log, and the name of the new log. The
factory takes the name of the parent log and tags a "." and the new log
name onto the end. Of course this is what happens automatically with
class hierarchies when you use class.getName() to name the category, but
since I am not using that hierarchy, I have to do it myself.
So every object that uses logging, must take a string (the name of the
parent log) instead of an actual log, which would be preferrable. I
know most people use the class hierarchy to separate the log categories,
eliminating the need for an additional constructor parameter, but I have
instances of the same class floating all around the network and I need
to know explicitly which container it is comming from.
I think the better solution would be to include a non-static method in
the Category (or Logger) class that allows you to explicitly create a
child log. Something like
public Category getChild(String childName);
On Tue, 2002-01-29 at 11:29, Hunter, Bryan wrote:
Is there a way to explicity set a category's parent using the API? I don't
want to explicity put entries in my log4j.properties file for each class I
create a category for. This seems way too much work and unmanagable. I
want all my categories using the same Appender.
I've wrapped Category in my own class (this will also make it easier to move
to Log4J ver 1.2 where Category is deprecated). I'm using Log4J ver 1.1.3.
I want to have all my category's inherit appenders from a parent category
for my project, but I don't want them to inherit directly from the
rootCategory. I'm running Jboss and it uses Log4J for its logging
(resetting the rootCategory will affect Jboss' logging and I don't want to
change this). I want to set additive to false for my parent category (not
inherit appenders from rootCategory), then have all my child categorys have
additivity.
--
Bryan K. Hunter
bryan.hunter@omnichoice.com
Senior Software Engineer "Winning Decisions for you
and your Customers"
OmniChoice www.omnichoice.com
2570 Blvd. Of Generals, Suite 210 610-630-2103 ext. 135
Norristown, PA 19403 610-630-2117 (fax)
www.omnichoicesolutions.com
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>
Eric George
egeorge@placebosoft.com
hm: 720-855-0484
cell: 720-231-2335
Re: setting a category's parent
Posted by Dan Lipofsky <da...@nuserve.com>.
> Is there a way to explicity set a category's parent using the API? I
don't
> want to explicity put entries in my log4j.properties file for each class I
> create a category for. This seems way too much work and unmanagable. I
> want all my categories using the same Appender.
> ...
> I want to have all my category's inherit appenders from a parent category
> for my project, but I don't want them to inherit directly from the
> rootCategory. I'm running Jboss and it uses Log4J for its logging
> (resetting the rootCategory will affect Jboss' logging and I don't want to
> change this). I want to set additive to false for my parent category (not
> inherit appenders from rootCategory), then have all my child categorys
have
> additivity.
You don't have to explicitly set the parent.
X.Y.Z inherits from X.Y and X and root.
You can set additivity to false for X if you don't want to inherit from
root and that will get you what you are asking for.
- Dan
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>