是否可以将日志级别设置为自定义启动器配置的一部分?
例如,假设我创建了一个自定义启动器,它扩展了默认的 spring-boot-starter-data-jpa。是否可以将日志级别设置为启动org.hibernate器WARN的一部分,以便使用我的自定义启动器的每个应用程序都自动继承它,而不必在他们自己的属性文件中切换INFO到?WARN
非常感谢!
是否可以将日志级别设置为自定义启动器配置的一部分?
例如,假设我创建了一个自定义启动器,它扩展了默认的 spring-boot-starter-data-jpa。是否可以将日志级别设置为启动org.hibernate器WARN的一部分,以便使用我的自定义启动器的每个应用程序都自动继承它,而不必在他们自己的属性文件中切换INFO到?WARN
非常感谢!
我建议通过将属性源添加到包含logging.level.org.hibernate设置为WARN.
为此,您可以使用META-INF/spring.factories来注册EnvironmentPostProcessor. 该spring.factories文件是一个属性文件。键是已实现接口的完全限定类名。在这种情况下,它的org.springframework.boot.env.EnvironmentPostProcessor值应该是实现的完全限定名称。内容会是这样的:
org.springframework.boot.env.EnvironmentPostProcessor=com.example.HibernateLoggingEnvironmentPostProcessor
在您的EnvironmentPostProcessor实现中,您应该PropertySource在Environment. 该属性源应包含logging.level.org.hibernate一个值为 的属性WARN。例如,您可以使用MapPropertySourcecreated using Collections.singletonMap。