/** * * springboot 可以控制关闭日志输出,也可以指定某个包或类关闭日志输出 * * 可以通过在application.yml或application.properties(根据自己选择使用)中控制日志的输出级别、是否输出 * * 一、控制日志级别 * * logging: * level: * root: warn * * 二、整体关闭日志 * * logging: * level: * root: warn * * 三、关闭指定包日志输出 * */-------------------------------代码1:关闭日志输出----------------------------application.yml
logging: level: root: off----------controller
@RequestMapping("/test1")@ResponseBodypublic String testLog(){ //增加用于表示有请求进来 System.out.println("进入日志请求controller"); logger.error("error 日志"); logger.info("info 日志"); logger.debug("debug 日志"); logger.trace("trace 日志"); logger.warn("warn 日志"); return "test1 请求成功";}日志关闭后其中项目,发现控制台只打印出了几行代码
Connected to the target VM, address: '127.0.0.1:55652', transport: 'socket'
. ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v2.0.4.RELEASE)
这是其他代码都是使用logger.info打印的,日志关闭后自然就不再打印
然后发起请求,发现控制台只有一个 System.out.println 输出
进入日志请求controller说明日志确实已经关闭输出-----------------代码2:关闭部分模块日志输出------------------applcation.yml配置
logging: level: net.jy.redis.controller.logback: off
指定具体包路径关闭启动项目可以发现控制台打印出启动日志。(1),访问 net.jy.redis.controller.logback 包下的请求,发现控制台日志并未打印出log日志。说明关闭生效(2),访问其他包路径下文件,控制台打印出error 日志info 日志warn 日志证明关闭指定模块日志输出配置生效----------------------代码三:控制日志级别-------------------------------applicaton.yml
logging: level: net.jy.redis.controller.logback: off root: warn
设置其他包日志界别warn。java代码:
@RequestMapping("/log1")@ResponseBodypublic String testLog(){ //增加用于表示有请求进来 System.out.println("进入日志请求controller"); logger.error("error 日志"); logger.info("info 日志"); logger.debug("debug 日志"); logger.trace("trace 日志"); logger.warn("warn 日志"); return "Log1 test1 请求成功";}
访问:控制台输出:进入日志请求controller2019-12-28 10:37:56.048 ERROR 1244 --- [nio-9201-exec-2] net.jy.redis.controller.testlog.Log1 : error 日志2019-12-28 10:37:56.048 WARN 1244 --- [nio-9201-exec-2] net.jy.redis.controller.testlog.Log1 : warn 日志发现只打印了error、warn日志。说明配置生效
注意:org.springframework.boot.context.properties.bind.BindException: Failed to bind properties under 'logging.level' to java.util.Map