From: M.Le_maudit <mle...@us...> - 2004-04-27 13:01:51
|
Hello everyone. I have some questions about *how to* and *when* use the logger. 1- Some classes uses the logger and some don't. A simple search of the string "import org.openscience.cdk.tools.LoggingTool;" in all the matching "*.java" files of the CDK project give this result: The logger is only used in 63 "*.java" files while the project contains 553 "*.java" files. So, my questions are: - When should I use the logger and when should I avoid its use? - Which arguments must lead me to use the logger? - Is the logger usage restricted to test classes or not? 2- Sometimes, the logger is declared as a class field and sometimes it is declared as a local variable within methods. - When (and why) should I use the logger as a local variable? - When (and why) should I use the logger as a class's field? 3- When the logger is declared as a class field, the logger is sometimes declared with the *static* modifier and sometimes not. - When (and why) should the logger be declared *static*? - When (and why) should the logger not be declared *static*? 4- When the logger is declared as a class field, the logger is sometimes declared with a *private* access modifier, and sometimes not. - When (and why) should the logger be declared *private*? - When (and why) should the logger not be declared *private*? 5- There are 5 levels which are DEBUG, INFO, WARNING, ERROR and FATAL. - Which are used and what for? Are there avoided modes? To be more accurate: - What sort of messages should be reported with DEBUG mode? - What sort of messages should be reported with INFO mode? - What sort of messages should be reported with WARNING mode? - What sort of messages should be reported with ERROR mode? - What sort of messages should be reported with FATAL mode? 6- What should be the structure of a log message? Is there a specific format that you wish to be used? How verbose should be a log message? Humm... I suppose that this structure is different for each message level. So to be more precise: - What is the expected structure of DEBUG messages? - What is the expected structure of INFO messages? - What is the expected structure of WARNING messages? - What is the expected structure of ERROR messages? - What is the expected structure of FATAL messages? 7- Where should log messages be placed in the source code? Thanks for yours answers. Yours. M. |