我有jar包与使用记录器类。这个jar加入到应用程序的依赖。我有几个logback-test.xml
文件。第一个文件是在我的应用程序,在罐子中定义的第二定义。在情况下,从罐子类使用记录器与名称my-custom-logger
有必要按照其在第二文件中定义(这是在罐子)构型。然而,不使用此配置。该应用程序总是使用第一个配置文件。我的应用程序在Tomcat上运行,所以我觉得Tomcat正在响应的记录。
可能有人建议如何解决这个问题呢?
第一个文件:
<configuration>
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%date{HH:mm:ss.SSS} %highlight(%-5level) [%cyan(%-40.40logger{39})] %msg %gray(%mdc) %red(%rootException) %n</pattern>
</encoder>
</appender>
<!-- root -->
<root level="info">
<appender-ref ref="CONSOLE" />
</root>
所述第二文件(从罐):
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>
%date{EEE dd HH:mm:ss} [specific prefix] [%thread] %-5level %logger{0} - %msg%n
</Pattern>
</layout>
</appender>
<logger name="my-custom-logger" level="info" additivity="false">
<appender-ref ref="STDOUT" />
</logger>
<root level="INFO">
<appender-ref ref="STDOUT"/>
</root>
我建议你包括第一个配置文件中的第二个配置文件(在一个罐子里)使用包括标签(应用程序所使用的)。
波纹管的使用的一个例子包括:
<configuration>
<include resource="logback-second.xml"/> <!-- here I included the configuration file from jar using it's name
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%date{HH:mm:ss.SSS} %highlight(%-5level) [%cyan(%-40.40logger{39})] %msg %gray(%mdc) %red(%rootException) %n</pattern>
</encoder>
</appender>
<!-- root -->
<root level="info">
<appender-ref ref="CONSOLE" />
</root>