我有一个spring boot-batch应用程序,其中嵌入了4个作业。我们将每个作业的日志分开,以便将日志转到每个作业的单独日志文件。我们使用了logback的筛选附加程序来实现相同目的。这确实有效,在日志文件中,我可以看到Spring初始化,应用程序处理日志。但是我看不到任何作业完成/关闭日志。但是,当我将配置更改为使用log4j2时,可以看到它们。有什么想法为什么logback不打印spring shutdown日志?这是注销配置:
<appender name="siftingAppender" class="ch.qos.logback.classic.sift.SiftingAppender">
<discriminator>
<key>batch-job</key>
<defaultValue>ANONYMOUS</defaultValue>
</discriminator>
<sift>
<appender name="fileAppender" class="ch.qos.logback.core.FileAppender">
<file>${LOGS}/ModelManagerOutbound-${batch-job}.log</file>
<layout class="ch.qos.logback.contrib.json.classic.JsonLayout">
<jsonFormatter class="ch.qos.logback.contrib.jackson.JacksonJsonFormatter">
<prettyPrint>true</prettyPrint>
</jsonFormatter>
<timestampFormat>yyyy-MM-dd' 'HH:mm:ss.SSS</timestampFormat>
</layout>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${LOGS}/archived/ModelManagerOutbound-%d{yyyy-MM-dd}.%i.log
</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>10 MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
</appender>
</sift>
</appender>