时间:2021-05-19
在logback.xml中加上该配置,包名如:com.xxx
<logger name="packageName" level="OFF"> </logger>
补充知识:logback,利用java包名对包内所有类定义输出形式
目的
将java package 中的所有类定义一个输出logger,定义它的级别,这样就不用每个类都配置。
测试
配置文件
<?xml version="1.0" encoding="UTF-8"?><configuration> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <pattern>%d{MM/dd/yyyy HH:mm:ss} %-5level [%thread%X{sourceThread}]%logger{24} - %msg%n</pattern> </encoder> </appender> <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>/var/log/admin-manage/log.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>/var/log/admin-manage/log.%d{yyyy-MM-dd}.log.gz</fileNamePattern> <maxHistory>7</maxHistory> </rollingPolicy> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <pattern>%d{MM/dd/yyyy HH:mm:ss} %-5level ${version} [%thread]%logger{16} - %msg%n </pattern> </encoder> </appender> <logger name="test1" level="info"/> <logger name="test2" level="info" additivity="false"/> <logger name="test3" level="warn" additivity="false"> <appender-ref ref="STDOUT"/> </logger> <logger name="test4" level="warn" > <appender-ref ref="STDOUT"/> </logger> <logger name="com.netease.haitao.LogbackTest" level="warn"> <appender-ref ref="STDOUT"/> </logger> <root level="DEBUG"> <appender-ref ref="STDOUT"/> </root></configuration>代码
package com.netease.haitao.LogbackTest;import org.slf4j.Logger;import org.slf4j.LoggerFactory;/** * ${todo} * * @param: $$params$ * @return $returns$ * @date $date$ $time$ */public class LogBackTestOne { private static final Logger logger = LoggerFactory.getLogger(LogBackTestOne.class); public static void main(String[] arg) {// print("test1");// print("test2");// print("test3");// print("test4"); print("test4.test5"); } public static void print(String name) { //Logger logger = LoggerFactory.getLogger(name); logger.debug("debug"); logger.info("info"); logger.warn("warn"); logger.error("error"); }}输出结果
05/03/2018 09:28:38 WARN [main]c.n.h.L.LogBackTestOne - warn
05/03/2018 09:28:38 WARN [main]c.n.h.L.LogBackTestOne - warn
05/03/2018 09:28:38 ERROR [main]c.n.h.L.LogBackTestOne - error
05/03/2018 09:28:38 ERROR [main]c.n.h.L.LogBackTestOne - error
大家可以注意到,这里只输出warn和error级别的信息,这是因为配置文件中“logger name=“com.netease.haitao.LogbackTest” level=“warn”” 中定义了日志级别,并且有root作为一个根级别的日志输出节点。
如果我们把name换成其他名字,修改为“logger name=“Test5” level=“warn””,我们看下结果:
05/03/2018 09:24:04 DEBUG [main]c.n.h.L.LogBackTestOne - debug
05/03/2018 09:24:04 INFO [main]c.n.h.L.LogBackTestOne - info
05/03/2018 09:24:04 WARN [main]c.n.h.L.LogBackTestOne - warn
05/03/2018 09:24:04 ERROR [main]c.n.h.L.LogBackTestOne - error
上述结果就是修改后的结果,从这里看出,所有的日志信息都从root这个父节点输出了,因为root的级别是debug,所有的日志信息都打印出来了,这样说明我们之前配置的java包的测试是成功的,有结果的。
如果项目是基于springboot框架的话,不需要额外引用相关依赖,直接配置logback.xml就可以直接用。
结论
上述测试证明:logger的name可以配置成java包名,这样可以对包内的所有java类都起作用。帮助简化配置。
以上这篇使用logback屏蔽一些包的日志就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
SpringBoot中默认使用Logback进行日志输出,可以同时使用SpringBoot框架的配置文件application.yml或是通过logback的配
前言Log4j2是Log4j的进化版本,并提供了许多Logback可用的改进,同时解决了Logback体系结构中的一些固有问题。而且日志处理中我们会用到kafk
一、logback日志技术介绍SpringBoot中使用的日志技术为logback。其与Log4J都出自同一人,性能要优于Log4J,是Log4J的替代者。在S
springboot日志默认采用logback进行输出,你可以对logback进行定制化,方法如下:在resources文件夹下建立logback.xml配置文
前言SpringBoot默认使用Logback,来打印日志,这里还想说的SLFJ(SimpleLoggingFacadeforJava),它们之间的关系,一张图