Naturally, but even if I set in the file: log4.loggerFactory=MyFactory And in the code I have org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger("myLogger");
I don't get the logger that my factory created. I see in debug that the factory is called but my client code still gets a native log4j Logger and not my own custom logger. >From what I saw in the code the reason is because log4j uses internally a RepositorySelector that always returns the regular Logger. The LogManager has a setter but log4j does not expose calling this setter via configuration. This is really what I think is missing. You can always call a code like this: LogManager.setRepositorySelector(new RepositorySelector(){ public LoggerRepository getLoggerRepository() { return myHierarchy; } }, null); But when this is done via code and not using configuration this means every new client needs to run this code. I am looking for a pure configurable solution so each new client that wants to work with my Custom Logger just needs to set the correct properties in log4j.properties. I hope this thread is clear for every one... Thanks. On Thu, Apr 2, 2009 at 2:15 PM, Bender Heri <hben...@ergonomics.ch> wrote: > Already looked at the LoggerFactory? > Heri > > -----Ursprüngliche Nachricht----- > Von: Yair Ogen [mailto:yairo...@gmail.com] > Gesendet: Donnerstag, 2. April 2009 10:13 > An: log4j-user@logging.apache.org > Betreff: Configure custom logger from file > > Hi, > > I need to configure a custom Legger that extends then log4j Logger. > > I want users to code: Logger.getLogger, and get the custom logger. > > I know how to do this in code, but this will require every developer to > call this code. > > I want to find a way to this via the log4.properties file so if all > developers use the same file their code is clean and will use the custom > logger in a transparent way. > > Any ideas? > > Thanks. > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org > For additional commands, e-mail: log4j-user-h...@logging.apache.org > >