本文为CSDN博主「LanTingShuXu」的原创文章,原文链接:https://blog.csdn.net/LanTingShuXu/article/details/80528558

java.utils.logging 包提供了日志功能

使用方式主要分为两种

  • 基本的全局日志记录功能,例如打印info级别的全局日志
// 可选的设置打印的日志级别(打印所有级别)
Logger.getGlobal().setLevel(Level.ALL);
// 打印info级别的全局日志
Logger.getGlobal().info("测试日志输出");
  • 使用自定义的日志记录
Logger logger = Logger.getLogger("JUL");
logger.setLevel(Level.INFO);
logger.severe("JUL severe");
logger.warning("JUL warning");
logger.info("JUL info");
logger.config("JUL config");
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.util.logging.config.file
 System.setProperty("java.util.logging.config.file",System.getProperty("user.dir")+"\\logging.properties");
  • 或者在启动时设置参数
-Djava.util.logging.config.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.logging.FileHandler.count = 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

java自带日志框架打印info以下级别日志的更多相关文章

  1. Spring Boot 揭秘与实战(三) 日志框架篇 - 如何快速集成日志系统

    文章目录 1. 默认的日志框架 logback2. 常用的日志框架 log4j 1.1. 日志级别 1.2. 日志文件 3. 源代码 Java 有很多日志系统,例如,Java Util Logging ...

  2. Java日志框架-logback配置文件多环境日志配置(开发、测试、生产)(原始解决方法)

    说明:这种方式应该算是最通用的,原理是通过判断标签实现. <!-- if-then form --> <if condition="some conditional exp ...

  3. 带你掌握Java各种日志框架

    一:日志基本概念及框架 1:什么是日志 Java程序员在开发项目时都是依赖Eclipse/IDEA等集成开发工具的Debug调试功能来跟踪解决Bug,但项目打包部署发布到了测试环境和生产环境怎么办?难 ...

  4. Java日志框架那些事儿

    文章首发于[博客园-陈树义],点击跳转到原文Java日志框架那些事儿. 在项目开发过程中,我们可以通过 debug 查找问题.而在线上环境我们查找问题只能通过打印日志的方式查找问题.因此对于一个项目而 ...

  5. Java常用日志框架介绍

    Java常用日志框架介绍 java日志概述 对于一个应用程序来说日志记录是必不可少的一部分.线上问题追踪,基于日志的业务逻辑统计分析等都离不日志.java领域存在多种日志框架,目前常用的日志框架包括L ...

  6. java 日志框架总结

    在项目开发过程中,我们可以通过 debug 查找问题.而在线上环境我们查找问题只能通过打印日志的方式查找问题.因此对于一个项目而言,日志记录是一个非常重要的问题.因此,如何选择一个合适的日志记录框架也 ...

  7. Java日志框架Slf4j+Log4j入门

    一.日志系统介绍 slf4j,即简单日志门面(Simple Logging Facade for Java),不是具体的日志解决方案,它只服务于各种各样的日志系统.简答的讲就是slf4j是一系列的日志 ...

  8. Java常用日志框架介绍(转)

    Java常用日志框架介绍 java日志概述 对于一个应用程序来说日志记录是必不可少的一部分.线上问题追踪,基于日志的业务逻辑统计分析等都离不日志.java领域存在多种日志框架,目前常用的日志框架包括L ...

  9. 【java】java自带的java.util.logging.Logger日志功能

    偶然翻阅到一篇文章,注意到Java自带的Logger日志功能,特地来细细的看一看,记录一下. 1.Java自带的日志功能,默认的配置 ①Logger的默认配置,位置在JRE安装目录下lib中的logg ...

随机推荐

  1. <转>WPF 中的绑定

    在WPF应用的开发过程中Binding是一个非常重要的部分. 在实际开发过程中Binding的不同种写法达到的效果相同但事实是存在很大区别的. 这里将实际中碰到过的问题做下汇总记录和理解. 1. so ...

  2. BUUCTF 随便注

    知识点: ##堆叠注入 #预语句注入 https://www.cnblogs.com/0nth3way/articles/7128189.html#autoid-1-0-0 正则过滤了很多关键字导致无 ...

  3. bootstrap的表单form

    (1)默认表单 <form> <div class="form-group"> <label class="control-label&qu ...

  4. 【Java】理解ClassNotFoundException与NoClassDefFoundError的区别

    一.概念上的认识 1)Exception与Error的区别 1.Exception的出现不会导致程序结束,用户程序可以捕获该异常 2.Error的出现会导致程序结束,用户程序无法捕获Error错误 2 ...

  5. 04发送请求,将值赋给data--动态传递参数

    03==>发送青丘,将值赋给data. 注意:赋值使用的是 _this.setData({ }) 是以冒号的形式赋值, 提前保存好this data: { arrlistdata:[], }, ...

  6. js 落幕

    1.关于路由的跳转 核心是 a 再取出后缀作为参数判断 最后 innerHTML 上 <!DOCTYPE html> <html lang="en"> &l ...

  7. Grafana中mysql作为数据源的配置方法

    需求 近期在使用python写一套模拟API请求的监控项目,考虑数据可视化这方面就采用grafana来呈现,下面来看看怎么弄. 数据源准备 首先安装好mysql,将监控的日志数据写入到mysql之中. ...

  8. 201871010118-唐敬博《面向对象程序设计(JAVA)》第十四周学习总结

    博文正文开头格式:(2分) 项目 内容 这个作业属于哪个课程 <<https://home.cnblogs.com/u/nwnu-daizh/>> 这个作业的要求在哪里 < ...

  9. R-FCN:

    和Faster R-CNN相比,R-FCN具有更深的共享卷积网络层,这样可以获得更加抽象的特征 抽象特征的捕获能否通过“sketch/conceptual...” - guided 来进行?想法还是说 ...

  10. python字符串连接的三种方法

    1.+号连接 a="hello," b="world!" c=a+b print(c) 有一点需要注意的是,字符串类型是不可变的,所以每一次应用加号连接字符串都 ...