Different Loggers for Different Instances of Same Class

2008-04-04 Thread Robert Pepersack
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

2008-04-04 Thread Tim Nguyen
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

2008-04-04 Thread Robert Pepersack
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

2008-04-04 Thread Tim Nguyen
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

2008-04-04 Thread Robert Pepersack
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?

2008-04-04 Thread Matthew Kwong

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

2008-04-04 Thread Gary Gregory
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]