当前位置: 首页 > 知识库问答 >
问题:

在Spring Boot时禁用应用程序的控制台日志记录

司承业
2023-03-14

我需要禁用我的web应用程序控制台中的应用程序日志。下面的logback-spring.xml强制spring使用文件appender而不是控制台appender。然而,现在的问题是,我的应用程序日志是用来自所有包的所有日志编写的,甚至是来自那些在logback-spring.xml中没有指定的包的日志

<?xml version="1.0" encoding="UTF-8"?>
<include resource="org/springframework/boot/logging/logback/defaults.xml" />
<include resource="org/springframework/boot/logging/logback/file-appender.xml" />


<springProfile name="local,dev,qa,prodsup,perftest">
    <logger name="org.application.folder" level="debug" />
    <logger name="org.springframework.*" level="debug" />
    <root level="debug">
        <appender-ref ref="FILE" />
    </root>
</springProfile>



<springProfile name="prod">
    <logger name="org.application.folder" level="error" />
    <logger name="org.springframework.core " level="error" /> 
    <logger name="org.springframework.beans" level="error" />
    <logger name="org.springframework.context" level="error" />
    <logger name="org.springframework.transaction" level="error" />
    <logger name="org.springframework.web" level="error" />
    <logger name="org.springframework.test" level="error" />
    <logger name="org.springframework.boot.context" level="error"/>

</springProfile>

我使用的是spring Boot1.5.2。我使用logging.file键在application.properties中指定了日志文件位置。我目前正在使用Websphere,但我也面临着嵌入式tomcat的同样问题。

谢谢你。

共有1个答案

马德厚
2023-03-14

我想我错过了日志的基础知识。我已经将根记录器配置为使用file-appender,这就是为什么所有包中的所有日志都出现在我配置的文件中的原因。(LOG_FILE env属性值或应用程序属性中的logging.file。)如下所示,我更改了logback-spring.xml,它的工作方式与我预期的一样。

<?xml version="1.0" encoding="UTF-8"?>
<include resource="org/springframework/boot/logging/logback/defaults.xml" />
<include resource="org/springframework/boot/logging/logback/file-appender.xml" />


<springProfile name="local,dev,qa,prodsup,perftest">
    <logger name="org.application.folder" level="debug" >
        <appender-ref ref="FILE" />
     </logger>
    <logger name="org.springframework" level="debug" >
         <appender-ref ref="FILE" />
    </logger>

</springProfile>
 类似资料: