java常见log日志如何使用

前言

log日志可以debug错误或者在关键位置输出想要的结果

java日志使用一般有原生logger、log4j、Slf4j等

一般的日志级别都有如下(不同日志不一样的方法参数,注意甄别)

参数 描述
OFF、ON 不输出或者输出所有级别信息,通常使用在setLevel方法中
FATAL 致命错误
ERROR 错误error
WARN 告警信息
INFO info信息
DEBUG 调试信息
TRACE 运行轨迹信息
CONFIG 设定配置信息
FINE 级别轻微信息
FINER 级别更轻微信息
FINEST 级别最轻微信息

1. Java.util.Logger

科普一下原生日志生成工具,主要引用import java.util.logging.Logger;

源代码函数大致有如下方法:
(给定消息将被转发到所有注册的输出处理程序对象)

// 严重信息public void severe(String msg) { log(Level.SEVERE, msg);}// 警告信息public void warning(String msg) { log(Level.WARNING, msg);}// info信息 public void info(String msg) {log(Level.INFO, msg);}// 设定配置信息public void config(String msg) {log(Level.CONFIG, msg);}// 级别小信息public void fine(String msg) {log(Level.FINE, msg);}// 级别更小信息public void finer(String msg) {log(Level.FINE, msg);}// 级别最小信息public void finest(String msg) {log(Level.FINE, msg);}

具体示例如下:

package com.gaokaoli.logger;import java.util.logging.Logger;public class text1 {    public static void main(String []args){        Logger logger = Logger.getLogger("text1");        logger.severe("严重信息");        logger.warning("警示信息");        logger.info("info信息");        logger.config("设定配置信息");        logger.fine("级别小的信息");        logger.finer("级别更小的信息");        logger.finest("级别最小的信息");    }}

输出截图如下:

java常见log日志如何使用

可以看到小于info级别的信息不会在终端上显示输出

通过logger.setLevel(Level.ALL);来控制输出的级别。
ALL则输出severe、warning以及info,OF不输出,如果设置WARNING,则只输出severe以及warning;同理可推其他设置;

java常见log日志如何使用

方法中也有通过调用提供的供应商函数来构造消息,并将其转发到所有注册的输出处理程序对象。

// 严重信息public void severe(Supplier<String> msgSupplier) {log(Level.SEVERE, msgSupplier);}// 警告信息public void warning(Supplier<String> msgSupplier) {log(Level.WARNING, msgSupplier);}// info信息 public void info(Supplier<String> msgSupplier) {log(Level.INFO, msgSupplier); }// 设定配置信息public void config(Supplier<String> msgSupplier) {log(Level.CONFIG, msgSupplier);}// 级别小信息public void fine(Supplier<String> msgSupplier) {log(Level.FINE, msgSupplier);}// 级别更小信息public void finer(Supplier<String> msgSupplier) {log(Level.FINER, msgSupplier);}// 级别最小信息public void finest(Supplier<String> msgSupplier) {log(Level.FINEST, msgSupplier);}

2. org.apache.logging.log4j

在xml文件中导入依赖包

<dependency>       <groupId>org.apache.logging.log4j</groupId>       <artifactId>log4j-api</artifactId>       <version>2.14.1</version></dependency><dependency>       <groupId>org.apache.logging.log4j</groupId>       <artifactId>log4j-core</artifactId>       <version>2.14.1</version></dependency>

示例代码如下:

package com.gaokaoli.logger;import org.apache.logging.log4j.LogManager;import org.apache.logging.log4j.Logger;public class test3 {    public static void main(String []args){        Logger logger = LogManager.getLogger("text3");        logger.fatal("fatal错误");        logger.error("error错误");        logger.warn("warn警示");        logger.info("info基本信息");        logger.debug("debug调试");        logger.trace("trace 信息");    }}

输出结果如下:

java常见log日志如何使用

其方法大致都有如下:

java常见log日志如何使用

具体使用什么方法可对应查看

3. org.slf4j.Logger

目前主流的日志框架,可以使用占位符进行参数占位

主要通过slf4j作为日志输出
在每个类的开头都加入如下:

在xml文件中引入依赖包

<dependency>	<groupId>org.slf4j</groupId>	<artifactId>slf4j-simple</artifactId>	<version>1.7.25</version>	<scope>compile</scope></dependency>

如果不引入或者引入错误
会出现如下问题:出现SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder“.的解决方法

代码中通过引用通过

import org.slf4j.Logger;import org.slf4j.LoggerFactory;

具体示例代码如下:

import org.slf4j.Logger;import org.slf4j.LoggerFactory;public class text2 {    public static final Logger logger = LoggerFactory.getLogger(text2.class);    public static void main(String []args){        logger.error("error错误");        logger.warn("warn警示");        logger.info("info基本信息");        logger.debug("debug调试");        logger.trace("trace信息");    }}

截图如下:

java常见log日志如何使用

通过输出结果可看到
LoggerFactory.getLogger输出的结果带有类的相对路径,便于开发

以上就是“java常见log日志如何使用”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。

文章标题:java常见log日志如何使用,发布者:亿速云,转载请注明出处:https://worktile.com/kb/p/26456

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022年9月18日 下午10:25
下一篇 2022年9月18日 下午10:26

相关推荐

  • word页眉横线怎么删除

    word页眉横线删除的方法: 1、首先打开进入word文档。 2、然后在word的菜单上点击“页眉页脚”。 3、随后可以看到“页眉横线”选项,点击进入。 4、最后点击“删除横线”选项即可。 关于“word页眉横线怎么删除”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“word页眉横线怎么删…

    2022年9月19日
    1.1K00
  • Word首页不显示页码怎么设置

    首页不显示页码设置方法: 1、首先打开word文档。 2、然后点击上面菜单栏中的“插入”。 3、之后去点击功能里面的“页码”。 4、最后先去选择当前的页码, 然后点击右侧的删除键即可。 到此,相信大家对“Word首页不显示页码怎么设置”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关…

    2022年8月31日
    15400
  • 怎么在html页面中调用外部样式

    两种调用方法:1、使用link标签调用,语法“<link href=”外部样式表文件路径” rel=”stylesheet” type=”text/css” />”;2、利用“@import”关键字调用,语法“&lt…

    2022年9月16日
    18400
  • vue表单验证rules及validator验证器如何使用

    前言 为防止用户犯错,尽可能更早地发现并纠正错误。 Element中Form (表单)组件提供了表单验证的功能,只需要通过 rules 属性传入约定的验证规则,并将 Form-Item 的 prop 属性设置为需校验的字段名即可。 注意:prop对应表单域 model 字段,使用 validate方…

    2022年9月18日
    63800
  • windows 0x00000124蓝屏代码怎么解决

    解决方法: 方法一: 1、我们可以在上图位置看到具体错误文件的名称,所以我们可以在电脑中先找到它。 2、如果我们发现是版本更新的问题,那么可以尝试在网络上下载一个最新版本。 3、如果不是版本问题,那么右键选中该文件,点击“属性”进入属性设置。 4、然后点击上方“安全”选项卡,点击下方的“编辑” 5、…

    2022年9月16日
    31300
  • TraceId怎么搭配ELK使用

    需求分析 先分析一下,我们想实现的核心功能是搜索,必然是用 ES 实现,那问题就转换成如何将日志收集并存储到 ES。 日志大家都不陌生了,可以在控制台打印,也可以存入文件,那能不能直接输入 ES 呢,好像没听说过。 这里就要用到 Logstash 来收集日志,Spring 默认的日志框架 Logba…

    2022年9月20日
    12700
  • mac地址是不是物理地址

    mac地址是物理地址;mac地址的全称是“Media Access Control Address”,意为媒体存取控制位址,代表媒体访问控制,也称为物理地址或硬件地址,为网络上的每个设备提供唯一标识符,由一个48位或64位地址组成。 本教程操作环境:windows10系统、DELL G3电脑。 ma…

    2022年9月8日
    13600
  • Mysql中锁的使用场景是什么

    Mysql中锁的使用场景主要有:常见锁类型、Mysql引擎介绍、常用引擎间的区别、共享锁与排他锁、排他锁的实际应用、共享锁的实际应用、死锁的发生、另一种发生死锁的情景、死锁的解决方式、意向锁和计划锁、乐观锁和悲观锁。 一、常见锁类型 表级锁,锁定整张表 页级锁,锁定一页 行级锁,锁定一行 共享锁,也…

    2022年6月29日
    16500
  • 如何用JAVA语言分析双重检查锁定

    1、双重检查锁定 在程序开发中,有时需要推迟一些高开销的对象初始化操作,并且只有在使用这些对象时才进行初始化,此时可以采用双重检查锁定来延迟对象初始化操作。双重检查锁定是设计用来减少并发系统中竞争和同步开销的一种软件设计模式,在普通单例模式的基础上,先判断对象是否已经被初始化,再决定要不要加锁。尽管…

    2022年9月20日
    11100
  • windows显示器颜色如何校正

    显示器颜色校正的方法: 1、首先点击左下角开始,然后点击“windows系统”打开“控制面板”。 2、然后点击里面的“颜色管理”。 3、在任务选项中点击“高级”。 4、下拉,点击“校准显示器”。 5、最后就可以根据提示进行校准了。 到此,相信大家对“windows显示器颜色如何校正”有了更深的了解,…

    2022年8月27日
    11200
联系我们
站长微信
站长微信
分享本页
返回顶部