Java分布式事log日志有哪些,具体使用方法是什么?
导读:这篇文章给大家介绍了“Java分布式事log日志有哪些,具体使用方法是什么?”的相关知识,讲解详细,步骤过程清晰,对大家进一步学习和理解“Java分布式事log日志有哪些,具体使用方法是什么?”有一定的帮助,希望大家阅读完这篇文章能有所收获...
这篇文章给大家介绍了“Java分布式事log日志有哪些,具体使用方法是什么?”的相关知识,讲解详细,步骤过程清晰,对大家进一步学习和理解“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("级别最小的信息"); } }
输出截图如下:
可以看到小于info级别的信息不会在终端上显示输出
通过logger.setLevel(Level.ALL);
来控制输出的级别。
ALL则输出severe、warning以及info,OF不输出,如果设置WARNING,则只输出severe以及warning;同理可推其他设置;
方法中也有通过调用提供的供应商函数来构造消息,并将其转发到所有注册的输出处理程序对象。
// 严重信息 public void severe(SupplierString> msgSupplier) { log(Level.SEVERE, msgSupplier); } // 警告信息 public void warning(SupplierString> msgSupplier) { log(Level.WARNING, msgSupplier); } // info信息 public void info(SupplierString> msgSupplier) { log(Level.INFO, msgSupplier); } // 设定配置信息 public void config(SupplierString> msgSupplier) { log(Level.CONFIG, msgSupplier); } // 级别小信息 public void fine(SupplierString> msgSupplier) { log(Level.FINE, msgSupplier); } // 级别更小信息 public void finer(SupplierString> msgSupplier) { log(Level.FINER, msgSupplier); } // 级别最小信息 public void finest(SupplierString> 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 信息"); } }
输出结果如下:
其方法大致都有如下:
具体使用什么方法可对应查看
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信息"); } }
截图如下:
通过输出结果可看到
LoggerFactory.getLogger输出的结果带有类的相对路径,便于开发
关于“Java分布式事log日志有哪些,具体使用方法是什么?”的内容就介绍到这,感谢各位的阅读,相信大家对Java分布式事log日志有哪些,具体使用方法是什么?已经有了进一步的了解。大家如果还想学习更多知识,欢迎关注网络,小编将为大家输出更多高质量的实用文章!
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Java分布式事log日志有哪些,具体使用方法是什么?
本文地址: https://pptw.com/jishu/652285.html