【Java】logback⽇志显⽰完整包名
⼀、背景
  logback输出⽇志时,包名过长时会显⽰简称,⽐如o.fig.bootstrap.DubboBootstrap
完整包名是:org.fig.bootstrap.DubboBootstrap
  本⽂说明其原因并给出解决⽅法
⼆、原因
  l配置⽂件引⼊了基础配置⽂件
<include resource="org/springframework/boot/logging/l"/>
  l会⾃动加载两个append,其中CONSOLE的输出格式就会简化包名
三、解决
  1. 不引⼊l
  2. 使⽤⾃定义的Console
<appender name="Console" class="ch.ConsoleAppender">
<encoder class="ch.qos.der.PatternLayoutEncoder">
<pattern>%d{HH:mm:ss.SSS}  %-5level  [  %thread  ]  %logger Line:%-3L - %msg[Console]%n</pattern>
<charset>utf-8</charset>
</encoder>
</appender>
<root LEVEL="info">
<appender-ref ref="Console"/>
</root>
四、其它
  1. 查看logback加载的Append集合(logback-core)
class ch.joran.action.AppenderRefAction
java dubbo{
HashMap<String, Appender<E>> appenderBag = (HashMap<String, Appender<E>>) ec.getObjectMap().get(ActionConst.APPENDER_BAG);  Appender<E> appender = (Appender<E>) (appenderName);
}
  2. logback输出内容位置(Console、File等)(logback-core)
class ch.OutputStreamAppender<E>
{
  protected void subAppend(E event)
  {
  byte[] byteArray = de(event);
  writeBytes(byteArray);
  }
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。