我正在尝试关闭STS中使用application.properties文件的spring boot应用程序的控制台输出。
设置值logging.level.root似乎确实有一些效果,但我永远不能完全关闭它,也不能关闭自动配置报告输出。
logging.level.root=OFF
spring.main.banner-mode=OFF
application.version=@project.version@通过spring.main.banner-mode属性可以关闭横幅。
由于上述属性的某些原因,我仍然可以在启动时从spring获得调试输出:
2017-05-09 15:33:16.744 DEBUG 11772 --- [ main] .b.l.ClasspathLoggingApplicationListener : Application started with classpath:
2017-05-09 15:33:16.798 DEBUG 11772 --- [ main] o.s.boot.SpringApplication : Loading source class 还有更多的行告诉我哪些属性文件正在加载,但我不想用它们来填充这篇文章。
然后,我将获得自动配置报告输出。
我想知道我是否有配置问题,这是否会导致spring在启动时继续输出?
发布于 2017-05-10 15:47:52
回答我自己的问题:经过反复试验,我最终得出了以下结论,它通过application.properties文件在启动时禁止所有输出:
logging.level.root=OFF
logging.level.org.springframework.boot=OFF
spring.main.banner-mode=OFF发布于 2017-05-09 22:55:25
将以下内容添加到您选择的包中。
logging.level.<package>=OFFlogging.level.root=OFF对我不起作用
发布于 2021-05-14 01:52:18
您的方法的问题是,它只配置根级别的记录器;如果设置了匹配的记录器属性(例如logging.level.org.springframework.boot=DEBUG),单个日志将重新打开。我猜这就是为什么您的self answer需要显式禁用org.springframework.boot记录器以及根记录器的原因。
完全禁用日志记录的一种方法是创建一个完全禁用日志记录的特殊logback.xml文件。
<configuration>
</configuration>如果您总是想关闭日志记录,您可以只创建logback.xml文件并将其放入根包(例如src/main/resources/logback.xml)中。如果您只想在某些情况下禁用它(例如,如果在"nologging“Spring profile中),您可以创建一个具有不同名称(logback-off.xml)的自定义文件,并将其指定为您希望禁用它的配置文件/案例的配置文件。
logging.config=classpath:logback-off.xmlhttps://stackoverflow.com/questions/43872823
复制相似问题