You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-user@logging.apache.org by "Singh, Anoop" <an...@hp.com> on 2003/02/26 05:18:06 UTC

Writing Custom Logger by extending the Logger class

Hi,	
I am trying to write my customLogger by extending the
java.util.logging.Logger class.
I want to know is this the right approach ,the way I am doing.

class TSPPXMLLogger extends Logger {
private static TSPPXMLLogger logger = null;
public TSPPXMLLogger(String name,String localization){
super(name,localization);
}
public static Logger getLogger(String name){
if(logger == null){
logger = new TSPPXMLLogger(name,null);
return logger; 
}
else
return logger;
//do some impl here..should I ?
}
public void logError(Level level,String message){
super.log(level,message);
}
public void logFileError(Level level,String message,String stackTrace){
//do some impl here.
TSPPLoggerHelper tsppLoggerHelper = new TSPPLoggerHelper(); 
tsppLoggerHelper.setStackTrace(stackTrace);
super.log(level,message,tsppLoggerHelper);
}
public void addHandler(Handler handler){
super.addHandler(handler);

//Client Code..
private static TSPPXMLLogger logger = (TSPPXMLLogger)
TSPPXMLLogger.getLogger("TSPP");
private static TSPPXMLLogger testtsppXMLLogger =
(TSPPXMLLogger)TSPPXMLLogger.getLogger("aaaTSPP");
logger.logFileError("","","");   
Both give me same instance(because of the way I implemented), Is that
ok.?
Will it result in any kind of threading issues?

Any kind of pointers will be appreciated.
Regards,
Anoop Singh