我正在设置更复杂的日志记录,而不是简单的控制台输出。logback通过
ConsoleAppender
. 但是当我增加额外的
RollbarAppender
这对它不起作用。
下面是logback.xml的一个示例
<?xml version="1.0" encoding="UTF-8"?>
<configuration >
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%highlight([%level]) - [%date] - [%logger] %msg%n</pattern>
</encoder>
</appender>
<appender name="ROLLBAR" class="com.rollbar.logback.RollbarAppender">
<accessToken>VERY_SECRET_TOKEN</accessToken>
<encoder>
<pattern>%highlight([%level]) - [%date] - [%logger] %msg%n</pattern>
</encoder>
</appender>
<logger name="akka" level="ERROR" additivity="false">
<appender-ref ref="ROLLBAR" />
</logger>
<logger name="slick" level="ERROR"/>
<root level="INFO">
<appender-ref ref="CONSOLE" />
</root>
</configuration>
同时,此配置工作正常,并将日志发送到第三方日志记录服务,但不写入控制台:(
<?xml version="1.0" encoding="UTF-8"?>
<configuration >
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%highlight([%level]) - [%date] - [%logger] %msg%n</pattern>
</encoder>
</appender>
<appender name="ROLLBAR" class="com.rollbar.logback.RollbarAppender">
<accessToken>VERY_SECRET_TOKEN</accessToken>
<encoder>
<pattern>%highlight([%level]) - [%date] - [%logger] %msg%n</pattern>
</encoder>
</appender>
<logger name="akka" level="INFO" additivity="false">
<appender-ref ref="CONSOLE" />
</logger>
<logger name="slick" level="ERROR"/>
<root level="ERROR">
<appender-ref ref="ROLLBAR" />
</root>
</configuration>
所以我很困惑。如何以这种方式使日志记录工作:
写入控制台的信息级事件
写入控制台+滚动条的错误级别事件