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

前端 未结 3 1968
悲哀的现实
悲哀的现实 2020-12-13 08:48

This might be a stupid question but I am a bit lost with java Logger

private static Logger logger = Logger.getLogger(\"order.web.OrderManager\");
logger.inf         


        
3条回答
  •  我在风中等你
    2020-12-13 09:29

    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.

提交回复
热议问题