That gives me this test:

    Logger logger = null;
    logger = logger.getLogger("test");
    logger.info("Beginning logger test");
    
    Appender t = LogManager.getRootLogger().getAppender( "test");
    if(null == t) {
      logger.info("LogManager.getRootLogger().getAppender(\"test\") is
null");
    } else if(t instanceof FileAppender) {
      logger.info("LogManager.getRootLogger().getAppender(\"test\") is
FileAppender");
    } else {
      logger.info("LogManager.getRootLogger().getAppender(\"test\") is
something else");
    }

And the output (testbed.log) is:

INFO - Beginning logger test
INFO - LogManager.getRootLogger().getAppender("test") is null

With this log4j.properties:

log4j.rootLogger=debug,test

log4j.appender.test=org.apache.log4j.DailyRollingFileAppender
log4j.appender.test.Append=false
log4j.appender.test.File=testbed.log
log4j.appender.test.layout=org.apache.log4j.SimpleLayout


-----Burton 

-----Original Message-----
From: Bender Heri [mailto:[EMAIL PROTECTED] 
Sent: Thursday, December 01, 2005 12:48 PM
To: Log4J Users List
Subject: RE: Silly ? - How do I figure out the name of the file the log is
being written to?

Assuming your configuration is still the same (root logger with appender
"test") then the call

  Appender ap = LogManager.getRootLogger().getAppender( "test");

should return your file appender "test". Doesn't it?

If you call Logger.getLogger( "Test" ) you get a logger instance without any
appenders attached. Since the additivity property of this logger is true, a
log call to this logger will go up within the hierarchy and end up at the
root logger which has the appender "test".


Heri

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


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

Reply via email to