java⾃带⽇志框架打印info以下级别⽇志
本⽂为CSDN博主「LanTingShuXu」的原创⽂章,原⽂链接:blog.csdn/LanTingShuXu/article/details/80528558
java.utils.logging 包提供了⽇志功能
使⽤⽅式主要分为两种
基本的全局⽇志记录功能,例如打印info级别的全局⽇志
// 可选的设置打印的⽇志级别(打印所有级别)
// 打印info级别的全局⽇志
使⽤⾃定义的⽇志记录
Logger logger = Logger("JUL");
logger.setLevel(Level.INFO);java面试题csdn
logger.severe("JUL severe");
logger.warning("JUL warning");
logger.info("JUL info");
logger.fine("JUL fine");
logger.finer("JUL finer");
logger.finest("JUL finest");
⽇志的级别
总共分为7个,由⾼到低分别为:
SERVERE
WARNING
INFO
CONFIG
FINE
FINER
FINEST
设置显⽰info以下级别的⽇志
默认情况下,只记录前三个级别,上⽂⾃定义logger代码是没有config及以下级别的⽇志输出的。如果想要显⽰INFO级别以下的⽇志信息,需要单独配置。配置⽅式如下
到JDK安装⽬录进⼊⽬录:jre/lib,复制logging.properties⽂件到项⽬src下
编辑logging.properties⽂件,到.Level=INFO这⼀⾏(我的是29⾏),将其改为你想显⽰的级别,⽐如:.Level=FINE则是显⽰FINE及以上的级别,.Level=ALL是显⽰所有⽇志。当然,可以设置特定的⾃
定的⽇志级别,例如com.lanting.Level=INFO则是只对记录器名为“com.lanting”及⼦记录器的起效
继续到java.util.logging.ConsoleHandler.level = INFO这⼀⾏(我的是43⾏),同样改成你想要显⽰的级别,例如改
成java.util.logging.ConsoleHandler.level = ALL则是显⽰所有级别的信息(推荐
在获取⽇志对象前设置 系统属性 java.fig.file
System.setProperty("java.fig.file",Property("user.dir")+"\\logging.properties");
或者在启动时设置参数
-Djava.fig.file=F:\practice\studylogging\logging.properties
然后就能够输出info以下级别的⽇志了
输出⽇志到⽂件
logging.properties⽂件中默认只配置了ConsoleHandler,也就是不会⽣成⽇志⽂件,需要更改成如下配置
# To also add the FileHandler, use the following line instead.
handlers= java.util.logging.FileHandler, java.util.logging.ConsoleHandler
每种handler都可以设置⾃⼰的⽇志输出级别,如果不设置,则采⽤“.LEVEL”配置的值
.level= ALL
# default file output is in user's home directory.
java.util.logging.FileHandler.pattern = ./java%u.log
java.util.logging.FileHandler.limit = 50000
java.util.unt = 1
java.util.logging.FileHandler.formatter = java.util.logging.SimpleFormatter
# Limit the message that are printed on the console to INFO and above. java.util.logging.ConsoleHandler.level = ALL
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter