如何在Spring Boot中禁用Logback ConsoleAppender

我正在使用Spring

Boot构建命令行应用程序。在这样的应用程序中,不适合使用logback控制台日志记录。如何完全禁用控制台附加程序,但仍使文件附加程序与默认的Spring

Boot支持一起使用?

回答:

我创建了一个功能请求,以在此处更简单地支持此功能:

https://github.com/spring-projects/spring-

boot/issues/1612

回答:

只需添加一个名为logback.xmlsrc/main/resources与像(原始拷贝除了控制台部分从spring启动的源)的内容:

<?xml version="1.0" encoding="UTF-8"?>

<configuration>

<property name="LOG_FILE" value="${LOG_FILE:-${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}/}spring.log}"/>

<property name="FILE_LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} %5p ${PID:- } [%t] --- %-40.40logger{39} : %m%n%wex"/>

<appender name="FILE"

class="ch.qos.logback.core.rolling.RollingFileAppender">

<encoder>

<pattern>${FILE_LOG_PATTERN}</pattern>

</encoder>

<file>${LOG_FILE}</file>

<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">

<fileNamePattern>${LOG_FILE}.%i</fileNamePattern>

</rollingPolicy>

<triggeringPolicy

class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">

<MaxFileSize>10MB</MaxFileSize>

</triggeringPolicy>

</appender>

<root level="INFO">

<appender-ref ref="FILE" />

</root>

</configuration>

注意

<property name="LOG_FILE" value="${LOG_FILE:-${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}/}spring.log}"/>

为了支持从Spring Boot的logging.file和设置日志文件,需要使用此文件logging.path

如果您要做的只是设置一些标准日志文件,则可以在上面的属性中设置其路径。

在较新版本的Spring Boot中,您可以轻松地包括base.xmlSpring Boot中的from并创建以下内容logback.xml

<?xml version="1.0" encoding="UTF-8"?>

<configuration>

<include resource="org/springframework/boot/logging/logback/base.xml" />

<root level="INFO">

<appender-ref ref="FILE" />

</root>

</configuration>

为了在Spring Boot 1.5.x和2.0.0.M4上运行,我添加了一个名为的文件logback-

spring.xml并将其添加到resources目录中。该文件可能看起来像这样

<?xml version="1.0" encoding="UTF-8"?>

<configuration>

<property name="LOG_FILE" value="${LOG_FILE:-${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}/}spring.log}"/>

<property name="FILE_LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} %5p ${PID:- } [%t] --- %-40.40logger{39} : %m%n"/>

<appender name="FILE"

class="ch.qos.logback.core.rolling.RollingFileAppender">

<encoder>

<pattern>${FILE_LOG_PATTERN}</pattern>

</encoder>

<file>${LOG_FILE}</file>

<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">

<fileNamePattern>${LOG_FILE}.%i</fileNamePattern>

</rollingPolicy>

<triggeringPolicy

class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">

<MaxFileSize>10MB</MaxFileSize>

</triggeringPolicy>

</appender>

<root level="INFO">

<appender-ref ref="FILE" />

</root>

</configuration>

以上是 如何在Spring Boot中禁用Logback ConsoleAppender 的全部内容, 来源链接: utcz.com/qa/424441.html

回到顶部