logback中的additivity属性

additivity的作用在于当前logger是否使用上级logeer(一般是root logger)配置的appender进行输出。

false:表示只用当前logger的appender-ref。

true:表示当前logger的appender-ref和rootLogger的appender-ref都有效。

应用场景:在项目中依赖其他服务,但是其他服务把业务异常写入error.log中,如果不想找别人修改(别人也不一定为你修改),那么在logback-test.xml中配置,

<logger name="(包名或类名,也就是org.slf4j.LoggerFactory.getLogger(name)中的name)" level="DEBUG" additivity="false" />

其实就是自己吃掉其他服务的业务异常,要注意把业务异常转化为自己的业务异常。

目的是避免error.log有太多无价值的东西。

原文地址:https://www.cnblogs.com/July74/p/5570582.html