Java 日志系统
Java 日志系统
1. 创建日志记录器
private final Logger logger = LoggerFactory.getLogger(LoggerTest.class);
2. 打印日志信息
// 跟踪轨迹,记录跟踪代码运行过程种的信息
logger.trace("这是 trace 日志");
// 调试信息
logger.debug("这是 debug 日志");
// 自定义的一些信息
logger.info("这是 info 日志");
// 警告信息(比如方法返回值不是预期的,可以使用该日志打印输出警告信息)
logger.warn("这是 warn 日志");
// 错误信息
logger.error("这是 error 日志");
3. 日志的级别
由高到底:
trace < debug < info < warn < error
可以调整输出日志的级别,日志就只会在这个级别以以后的高级别生效。
日志打印参数
日志打印参数要使用占位符。
举个栗子:
log.info("这是一个参数 [{}]", params);
如果参数是对象,要将器转为字符串类型再打印出来。
举个栗子:
log.info("这是一个对象 [{}]", ToStringBuilder.reflectionToString(refuseClassQuestionTO);
注意:不要使用拼接符,如
log.ingo("这是一个参数" + params);
这种方式虽然不会报错,但是是不规范的(不能指定参数位置)。
使用注解
在上面的例子中,我们每创建一个新类,要使用日志框架,就需要重新创建日志记录器:
private final Logger logger = LoggerFactory.getLogger(yourClass.class);
未免太过繁琐。
可以使用注解方法来避免重复创建日志记录器的方式。
- 依赖(该注解是通过 lombok 来实现的,需要导入 lombok 依赖:
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
- 只需要在类前加上
@Slf4j,便能使用如下格式输出日志:
log.info("这是一个 info 日志");
注意:该注解也是 lombok 功能的一部分,需要先安装 lombok 插件和 lombok 依赖。
Java 日志系统的更多相关文章
- Java日志系统及框架分析
最近在考虑将容器(Tomcat)内的应用日志统一成slf4j + logback,主要目的有: 快速定位应用日志输出路径,方便日志的采集: 能动态调整日志的级别,方便线上问题定位: 方便在容器层面做扩 ...
- Java日志系统框架的设计与实现
推荐一篇好的文章介绍java日志系统框架的设计的文章:http://soft.chinabyte.com/database/438/11321938.shtml 文章内容总结: 日志系统对跟踪调试.程 ...
- Java日志系统---Logger之简单入门
Java 中自带的日志系统,今天抽空了解了一点,算是入了门,所以将自己的一些心得记录下来,以备日后查看,有兴趣的朋友,看到此文章,觉得有错误或需要添加的地方,请在下方评论留言,大家可以共同进步,谢谢: ...
- 常见java日志系统的搭配详解:关于slf4j log4j log4j2 logback jul jcl commons-logging jdk-logging
先看一张图: 是不是有点晕, 晕就对了.这个仅仅是 slf4j 的情况,实际上, 我们不仅要接触到 slf4j ,有时候还会接触其他的日志系统.且看下文分解. 1 直接使用各个日志系统 1.1 直接使 ...
- Java日志系统
前言 各组件之间的关系: slf4j是The Simple Logging Facade for Java的简称,是一个简单日志门面抽象框架,它本身只提供了日志Facade API和一个简单的日志类实 ...
- 走进JavaWeb技术世界9:Java日志系统的诞生与发展
本文转自[码农翻身] ## 一个著名的日志系统是怎么设计出来的? # 1前言 Java帝国在诞生之初就提供了集合.线程.IO.网络等常用功能,从C和C++领地那里吸引了大量程序员过来加盟,但是却有意无 ...
- java日志系统中的 NDC
NDC https://www.cnblogs.com/smile361/p/3853404.html
- atitit. 日志系统的原则and设计and最佳实践(1)-----原理理论总结.
atitit. 日志系统的原则and设计and最佳实践总结. 1. 日志系统是一种不可或缺的单元测试,跟踪调试工具 1 2. 日志系统框架通常应当包括如下基本特性 1 1. 所输出的日志拥有自己的分类 ...
- elk + filebeat,6.3.2版本简单搭建,实现我们自己的集中式日志系统
前言 刚从事开发那段时间不习惯输出日志,认为那是无用功,徒增代码量,总认为自己的代码无懈可击:老大的叮嘱.强调也都视为耳旁风,最终导致的结果是我加班排查问题,花的时间还挺长的,要复现问题.排查问题等, ...
随机推荐
- js base64编码,C#解码
JS: this.Base64 = function (str) { return btoa(encodeURIComponent(str).replace(/%([0-9A-F]{2})/g, fu ...
- Linux设备驱动程序 之 字符设备的注册
内核内部使用struct cdev结构来标识字符设备,在内核调用设备的操作之前,必须分配并注册一个或者多个上述结构,为此,我们的代码需要包含<linux/cdev.h>,其中定义了这个结构 ...
- LeetCode 146. LRU缓存机制(LRU Cache)
题目描述 运用你所掌握的数据结构,设计和实现一个 LRU (最近最少使用) 缓存机制.它应该支持以下操作: 获取数据 get 和 写入数据 put . 获取数据 get(key) - 如果密钥 (k ...
- koa 项目实战(九)passport验证token
1.安装模块 npm install koa-passport -D npm install passport-jwt -D 2.解析token 根目录/config/passport.js cons ...
- springboot 底层 JackSon 的使用
Jackson常用的注解使用和使用场景: 接下来我们在看一段代码,这段代码是常用注解在实体类User中的简单使用:package zone.reborn.springbootstudy.entity; ...
- python MySQLdb连接mysql时报错
故障现象: >>> import MySQLdb >>> conn = MySQLdb.connect(host=,charset="utf8" ...
- 005-文件权限解说、授权chmod和chown命令的用法
一.文件权限说明 1.1.linux 中 drwxr-xr-x权限含义 在 linux drwxr-xr-x意思如下: 第一位表示文件类型.d是目录文件,l是链接文件,-是普通文件,p是管道. 后面的 ...
- oc 执行shell 脚本
-(id) InvokingShellScriptAtPath :(NSString*) shellScriptPath { NSTask *shellTask = [[NSTask alloc]in ...
- linux简单命令---网络编程
---------------------------------------------------------------------------------------------------- ...
- 阿里云Centos7挂载数据盘
查看磁盘情况 fdisk -l fdisk /dev/vdb 根据提示,分别输入 n. p. . enter.enter.wq fdisk -l mkfs.ext3 /dev/vdb1 挂载磁盘,写入 ...