欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Logger的打印日志

程序员文章站 2024-01-21 11:12:28
...

为什么要使用日志

  1. 在开发的时候需要输出部分信息到控制台
  2. 相比较与print输出,日志可以控制级别
  3. 用日志的方式的,可以带有级别的关键字,便于分析
  4. 可以记录到日志文件中,供日后查阅

日志的级别

logger中提供了五个级别,由大到小分别是:DEBUG INFO WARNING ERROR CRITICAL

  • DEBUG:详细的信息,通常只出现在诊断问题上
  • INFO:确认一切按预期运行
  • WARNING:一个迹象表明,一些意想不到的事情发生了,或表明一些问题在不久的将来(例如。磁盘空间低”)。这个软件还能按预期工作。
  • ERROR:更严重的问题,软件没能执行一些功能
  • CRITICAL:一个严重的错误,这表明程序本身可能无法继续运行

默认的是WARNING,当在WARNING或之上时才被跟踪。

开发应用程序或部署开发环境时,可以使用DEBUG或INFO级别的日志获取尽可能详细的日志信息来进行开发或部署调试

应用上线或部署生产环境时,应该使用WARNING或ERROR或CRITICAL级别的日志来降低机器的I/O压力和提高获取错误日志信息的效率。

日志级别的指定通常都是在应用程序的配置文件中进行指定的。

在springboot项目中实现日志控制

1.在pom文件中导入相关jar包

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
</dependency>

2.在application.yml文件下日志级别控制:

# 日志级别控制
logging:
  level:
    cn.com.mryhl: debug # 日志级别 从高到低 debug info warn error CRITICAL
    org.springframework.boot: info

3.测试:

package cn.com.mryhl.controller;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * @description: 测试的Controller
 * @author: mryhl
 * @date: Created in 2020/10/31 17:27
 * @version: 1.1
 * @RestController 相当于 @Controller+ @ResponseBody
 */
@RestController
@Slf4j
public class HelloController {
	@GetMapping("/hello")
	public String hello(){
		//System.out.println("HelloController中的hello方法执行了");
		log.debug("HelloController中的hello方法执行了");
		return "HelloController中的hello方法执行了";
	}
	
}

4. 测试结果

Logger的打印日志

其中:

  • logging.level:是固定写法,说明下面是日志级别配置,日志相关其它配置也可以使用。
  • cn.com.mryhl和org.springframework是指定包名,后面的配置仅对这个包有效。
  • debug:日志的级别 常用的级别有4个 debug info warn error
相关标签: java spring boot