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

如何以编程方式设置Spring Boot的日志级别?

施彬郁
2023-03-14

我知道如何通过环境变量和应用程序属性设置日志级别。

我尝试定义一个非惰性bean来向环境中添加一个新的PropertySource;调用了该方法,但它没有效果。

@Bean
@Lazy(false)
public PropertySource testProperties(ConfigurableEnvironment environment) {
  PropertySource properties = new MapPropertySource("testProperties", Collections.singletonMap(
      "logging.level.org.springframework.security", "DEBUG"
  ));

  environment.getPropertySources().addFirst(properties);
  return properties;
}

共有1个答案

呼延运恒
2023-03-14

您可以在测试类上使用@TestPropertySource。与您尝试的基于bean的方法不同,@testpropertysource将在上下文启动之前将属性source添加到环境中,这允许在初始化日志记录系统时拾取属性。

类似这样的事情:

@RunWith(SpringJUnit4ClassRunner.class)
@SpringApplicationConfiguration(YourApplication.class)
@TestPropertySource(properties = "logging.level.org.springframework.security:DEBUG")
public class YourApplicationTests {
    // …
}
 类似资料:
  • 以编程方式更改我的附加程序的日志级别,或者受到其他来源的影响。 亲爱的社区。 Log4J2版本为:2.12。0 我的应用程序正在使用log4j2。xml,日志级别设置为INFO。我的应用程序也在读取另一个配置文件,我想在其中为我的用户设置日志级别,例如DEBUG。 当应用程序初始化时(从log4j2.xml),我想将all的级别更改为DEBUG from second source作为示例。所以我

  • 问题内容: 我正在使用logback,并且尝试在Java程序中以编程方式设置日志文件名(类似于以编程方式设置LogbackAppender路径),并且我尝试按以下方法调整该解决方案: 在logback-test.xml中: 然后再次在我的Java程序中: 但是结果是两个日志,一个完整并按我的意愿命名,例如“ 1319041145343.log”,另一个为空并命名为“ log_file_name_I

  • 问题内容: 我对以编程方式更改Log4j2中的日志级别感兴趣。我尝试查看他们的配置文档,但似乎没有任何内容。我也尝试在包中查找:,但其中的任何内容看起来都没有帮助。 问题答案: 根据log4j2 2.4版常见问题进行编辑 您可以使用Log4j Core中的Configurator类设置记录器的级别。 但是请 注意,Configurator类不是公共API的一部分。 资源 编辑以反映Log4j2 2

  • 我对以编程方式更改log4j2中的日志级别感兴趣。我试着查看了他们的配置文档,但似乎没有任何内容。我还试着查看了这个包:,但里面也没有什么有用的东西。

  • 我需要为SpringBoot应用程序设置两个数据源。目前,用于(成功地)处理MariaDB服务器上超时的单个数据源工作解决方案在application.properties中设置了以下三个参数 我使用基于Java的数据源配置检查过的各种示例大致如下:

  • 问题内容: 我的问题很简单 如何以编程方式设置我的按钮layout_gravity? 我在互联网上找到了它,但它只是抛出了一个Nullpointer异常: 有什么办法吗? 问题答案: Java Kotlin 有关重力值以及如何设置重力,请检查“重力”。 基本上,您应该选择依赖于父项。可以是等等。