Different Loggers for Different Instances of Same Class
Hello. Thanks in advance for your help. I'm running scheduled jobs, and they create their own instances of my JDBC class. For example, JobA creates a new JdbcFacadeA, and JobB creates its own JdbcFacadeB. I would like to log each job in its own log (easy). But, I want the output from JdbcFacadeA to go to the log for JobA, and I want the output from JdbcFacadeB to go to JobB's log. I'm using the log4j convention for naming loggers, which uses the fully qualified class name. How can I do this? Thanks, Robert Pepersack Senior Lead Developer Maryland Insurance Administration 410-468-2054 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Log Utility
Hi, I am writing a Log Utility to check the log level first before creating a string object. For example, if my log level is INFO, and I call: log.debug(new String(test)); It will still instantiate the String object even thought it doesn't log anything. So I would like to write an Utility to check the level first, if the log level is lower, then I don't have to instantiate the object and just skip it. Anybody knows what is the easy way to do that? Thanks, You rock. That's why Blockbuster's offering you one month of Blockbuster Total Access, No Cost. http://tc.deals.yahoo.com/tc/blockbuster/text5.com
Re: Log Utility
Hi Tim, The Logger class has a way of checking the level first. First put this in your instance variables: private static final Logger logger = Logger.getLogger(my.package.MyClass); private final boolean debug = logger.isDebugEnabled(); Then put this in your method: if (this.debug) { logger.debug(new String(test)); } Hope this helps. Robert Pepersack Senior Lead Developer Maryland Insurance Administration 410-468-2054 Tim Nguyen [EMAIL PROTECTED] 04/04/2008 3:02 PM Hi, I am writing a Log Utility to check the log level first before creating a string object. For example, if my log level is INFO, and I call: log.debug(new String(test)); It will still instantiate the String object even thought it doesn't log anything. So I would like to write an Utility to check the level first, if the log level is lower, then I don't have to instantiate the object and just skip it. Anybody knows what is the easy way to do that? Thanks, You rock. That's why Blockbuster's offering you one month of Blockbuster Total Access, No Cost. http://tc.deals.yahoo.com/tc/blockbuster/text5.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Log Utility
Thank you! It is similar to what I wanted to do. This is more like the solution for one class. Is there anyway to check for all classes? I have hundreds of classes and I want to have an util that I can just replace the current logging (e.g: logger.debug(String)) with LogUtil (e.g: LogUtil.debug(String) and it does the trick. That way I can just replace All the logger with LogUtil :) Thanks again for your help! - Original Message From: Robert Pepersack [EMAIL PROTECTED] To: Log4J Users List log4j-user@logging.apache.org Sent: Friday, April 4, 2008 12:14:30 PM Subject: Re: Log Utility Hi Tim, The Logger class has a way of checking the level first. First put this in your instance variables: private static final Logger logger = Logger.getLogger(my.package.MyClass); private final boolean debug = logger.isDebugEnabled(); Then put this in your method: if (this.debug) { logger.debug(new String(test)); } Hope this helps. Robert Pepersack Senior Lead Developer Maryland Insurance Administration 410-468-2054 Tim Nguyen [EMAIL PROTECTED] 04/04/2008 3:02 PM Hi, I am writing a Log Utility to check the log level first before creating a string object. For example, if my log level is INFO, and I call: log.debug(new String(test)); It will still instantiate the String object even thought it doesn't log anything. So I would like to write an Utility to check the level first, if the log level is lower, then I don't have to instantiate the object and just skip it. Anybody knows what is the easy way to do that? Thanks, You rock. That's why Blockbuster's offering you one month of Blockbuster Total Access, No Cost. http://tc.deals.yahoo.com/tc/blockbuster/text5.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] You rock. That's why Blockbuster's offering you one month of Blockbuster Total Access, No Cost. http://tc.deals.yahoo.com/tc/blockbuster/text5.com
Re: Log Utility
The Logger.isDebugEnabled() method applies to all of the classes that use your configured log4j repository. If you have your all of your loggers set to DEBUG, then Logger.isDebugEnabled() will return true, no matter what class it gets called in. Robert Pepersack Senior Lead Developer Maryland Insurance Administration 410-468-2054 Tim Nguyen [EMAIL PROTECTED] 04/04/2008 4:35 PM Thank you! It is similar to what I wanted to do. This is more like the solution for one class. Is there anyway to check for all classes? I have hundreds of classes and I want to have an util that I can just replace the current logging (e.g: logger.debug(String)) with LogUtil (e.g: LogUtil.debug(String) and it does the trick. That way I can just replace All the logger with LogUtil :) Thanks again for your help! - Original Message From: Robert Pepersack [EMAIL PROTECTED] To: Log4J Users List log4j-user@logging.apache.org Sent: Friday, April 4, 2008 12:14:30 PM Subject: Re: Log Utility Hi Tim, The Logger class has a way of checking the level first. First put this in your instance variables: private static final Logger logger = Logger.getLogger(my.package.MyClass); private final boolean debug = logger.isDebugEnabled(); Then put this in your method: if (this.debug) { logger.debug(new String(test)); } Hope this helps. Robert Pepersack Senior Lead Developer Maryland Insurance Administration 410-468-2054 Tim Nguyen [EMAIL PROTECTED] 04/04/2008 3:02 PM Hi, I am writing a Log Utility to check the log level first before creating a string object. For example, if my log level is INFO, and I call: log.debug(new String(test)); It will still instantiate the String object even thought it doesn't log anything. So I would like to write an Utility to check the level first, if the log level is lower, then I don't have to instantiate the object and just skip it. Anybody knows what is the easy way to do that? Thanks, You rock. That's why Blockbuster's offering you one month of Blockbuster Total Access, No Cost. http://tc.deals.yahoo.com/tc/blockbuster/text5.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] You rock. That's why Blockbuster's offering you one month of Blockbuster Total Access, No Cost. http://tc.deals.yahoo.com/tc/blockbuster/text5.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Anyway to manually flush the buffer content to the log file?
Hi, I have been search through the forum and google already but I can't find the answer. Right now, I am using RollingFileAppender and set BufferedIO to be true. When my application starts, it will output some startup message (like startup env variable and startup time) to the buffer. However, I would like to output those message to the log file instantly after the application finishes starting, but keep the BufferedIO feature after writing the first patch of messages to the log file. Is there anyway to manually flush the buffer content to the log file? Thanks, Matthew Kwong -- View this message in context: http://www.nabble.com/Anyway-to-manually-flush-the-buffer-content-to-the-log-file--tp16502791p16502791.html Sent from the Log4j - Users mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Log Utility
Also note that log.debug(new String(test)) is the same as log.debug(test); and in general: new String(test) is the same as test Gary -Original Message- From: Robert Pepersack [mailto:[EMAIL PROTECTED] Sent: Friday, April 04, 2008 1:44 PM To: Log4J Users List Subject: Re: Log Utility The Logger.isDebugEnabled() method applies to all of the classes that use your configured log4j repository. If you have your all of your loggers set to DEBUG, then Logger.isDebugEnabled() will return true, no matter what class it gets called in. Robert Pepersack Senior Lead Developer Maryland Insurance Administration 410-468-2054 Tim Nguyen [EMAIL PROTECTED] 04/04/2008 4:35 PM Thank you! It is similar to what I wanted to do. This is more like the solution for one class. Is there anyway to check for all classes? I have hundreds of classes and I want to have an util that I can just replace the current logging (e.g: logger.debug(String)) with LogUtil (e.g: LogUtil.debug(String) and it does the trick. That way I can just replace All the logger with LogUtil :) Thanks again for your help! - Original Message From: Robert Pepersack [EMAIL PROTECTED] To: Log4J Users List log4j-user@logging.apache.org Sent: Friday, April 4, 2008 12:14:30 PM Subject: Re: Log Utility Hi Tim, The Logger class has a way of checking the level first. First put this in your instance variables: private static final Logger logger = Logger.getLogger(my.package.MyClass); private final boolean debug = logger.isDebugEnabled(); Then put this in your method: if (this.debug) { logger.debug(new String(test)); } Hope this helps. Robert Pepersack Senior Lead Developer Maryland Insurance Administration 410-468-2054 Tim Nguyen [EMAIL PROTECTED] 04/04/2008 3:02 PM Hi, I am writing a Log Utility to check the log level first before creating a string object. For example, if my log level is INFO, and I call: log.debug(new String(test)); It will still instantiate the String object even thought it doesn't log anything. So I would like to write an Utility to check the level first, if the log level is lower, then I don't have to instantiate the object and just skip it. Anybody knows what is the easy way to do that? Thanks, __ __ You rock. That's why Blockbuster's offering you one month of Blockbuster Total Access, No Cost. http://tc.deals.yahoo.com/tc/blockbuster/text5.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] __ __ You rock. That's why Blockbuster's offering you one month of Blockbuster Total Access, No Cost. http://tc.deals.yahoo.com/tc/blockbuster/text5.com - 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]