It sounds like instead of using a logger named "com.company.blah.MyClass", your code is asking log4j for a logger named simply "MyClass".
Therefore when your log4j.properties configuration refers to the logger named "MyClass", it works as you expect; but when you attempt to configure the logger named "com.company.blah.MyClass", nothing happens - because no code is sending any log messages to a logger with that name. -----Original Message----- From: Guy [mailto:guy.van.tilbo...@gmail.com] Sent: Thursday, March 19, 2009 10:16 AM To: Log4J Users List Subject: Re: Custom Appender works fine with rootlogger, but not when logger specified Thanks Simon, but my problem was caused by the following lines during activateOptions(): //set the name to the className as name of the appender. //This will always be the name of the actual class (I have more than one appender, some extending the other) String classname = this.getClass().getName(); classname = classname.substring(classname.lastIndexOf(".") +1); this.setName(classname); I don't even know anymore why I thought this would be a good idea, but ommenting the code solved the problem. I am curious how that code was the cause of the problem, but the problem itself is solved Guy On Thu, Mar 19, 2009 at 3:06 PM, Simon Park <simon_park_m...@yahoo.co.uk> wrote: > Hi, > > Take a look at the > http://www.simonsite.org.uk/javadoc/org/apache/log4j/appender/TimeAndSizeRollingAppender.html. > Source is available in the JAR at > http://www.simonsite.org.uk/resources/lib/log4j-rolling-appender.jar. This > appender does a similar thing to your custom appender by the sounds of it. > > Simon > > > > > ________________________________ > From: Guy <guy.van.tilbo...@gmail.com> > To: log4j-user@logging.apache.org > Sent: Thursday, 19 March, 2009 9:48:51 > Subject: Custom Appender works fine with rootlogger, but not when > logger specified > > Hi, > > I have written a custom appender that adds file rotation and zipping > of the rotated files. Some other custom functionality is added. What I > do is: when a file has reached a certain size, I close the file, > rename it and compress it. After the rename, I reset the file. The > renaming of the file is where it all goes wrong. > > > Everything works fine if I stick to using the rootLogger: > > <Defining of our custom appender> > > log4j.rootLogger=INFO, ddm > > #THIS WORKS FINE > #log4j.logger.mylogger=INFO > > > #THIS DOES NOT WORK FINE. Note That we do not even write to this > logger (class) log4j.logger.be.package=INFO, mylogger > > > SO for some reason, using the line "log4j.logger.be.package=INFO, > mylogger" creates an object that prevents the rename from taking > place. > > I have looked at the RollingFileAppender about closing the > file/writing to the stream, but as far as I can see, I do the same. I > could also rewrite my custom appender starting from the > RollingFileAppender, but that is something I want to prevent > > Any help would be apreciated > > Guy > > --------------------------------------------------------------------- > To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org > For additional commands, e-mail: log4j-user-h...@logging.apache.org > > > --------------------------------------------------------------------- To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org For additional commands, e-mail: log4j-user-h...@logging.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org For additional commands, e-mail: log4j-user-h...@logging.apache.org