logback.xml中additivity的使用
·
logback.xml中additivity的使用
1. jar包引入
<!-- logback -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>
2. Java代码
package com.smart;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class Parent {
private static Logger logger = LoggerFactory.getLogger(Parent.class);
public static void printLog() {
logger.debug("execute Parent.printlog()");
}
}
package com.smart.logback;
import com.smart.Parent;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class FirstLogbackConfigFile {
private static Logger logger = LoggerFactory.getLogger(FirstLogbackConfigFile.class);
public static void main(String[] args){
firstLog();
}
public static void firstLog() {
Parent.printLog();
logger.debug("execute com.smart.logback.firstlog()");
}
}
3. logback-test.xml
<configuration scan="true" scanPeriod="60 seconds" debug="false" packagingData="true">
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<root level="DEBUG">
<appender-ref ref="STDOUT" />
</root>
<!--
additivity="false" 表示当前以及子logger都不会使用当前logger父logger的appender,也不会使用其他logger的appender,
当前以及子logger只会使用当前logger的appender。
这里的"com.smart","com.smart.logback" logger都不会使用root logger的appender,也不会使用其他logger的appender,
只会使用"com.smart" logger的appender
-->
<logger name="com.smart" additivity="false">
<appender-ref ref="STDOUT" />
</logger>
<logger name="com.smart.logback">
</logger>
</configuration>
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)