Where does java.util.logging.Logger store their log

Where do I see the log?

In a log file or standard output, depending on your actual log handler configuration. This can be set via a property file or directly via the logging API.

Does this mean that if I have 3 request level log…

SEVERE is the most important (highest priority) and FINE is the least important message type of the 3 shown in your example. So if your log level is SEVERE, only the SEVERE messages get logged. If level is FINE, all 3 messages get logged.

This is very useful when in real production environment, you may want to log only the errors and possibly warnings (which are – hopefully – fairly rare, but you want to know about them), so you can set log level to WARNING. However, in your development environment, when e.g. debugging a problem, you want to see all information in the logs, even though it creates a large amount of log data and slows down the application. So you set log level to FINE or FINEST.

Here is a good introduction to Java Logging.

Update: a simple example from the above page to configure the logger to log to a file at level FINEST:

Handler fh = new FileHandler("%t/wombat.log");
Logger.getLogger("").addHandler(fh);
Logger.getLogger("com.wombat").setLevel(Level.FINEST);

To log to the console, replace the FileHandler above with a ConsoleHandler:

Handler ch = new ConsoleHandler();
Logger.getLogger("").addHandler(ch);

This is just an example though – in a real app, it is preferable to configure the logging via a config property file.

Leave a Comment