Spring Boot 2.6 Actuator的info端点返回空对象问题求助
Spring Boot 2.6 Actuator /info端点返回空对象问题排查方案
核心原因
即使你开启了info端点的暴露和启用开关,Actuator的info端点本身不会默认返回任何内容,需要你显式配置要暴露的信息,或者引入对应自动配置的依赖、插件生成可读取的信息文件。
常见问题及解决方式
- 未配置自定义info属性
你需要在application.properties中添加info.为前缀的自定义配置项,Actuator会自动聚合这些配置到info返回结果,示例配置:info.app.name=示例应用 info.app.version=1.0.0 info.app.env=prod - 需要展示构建/Git信息时未配置对应插件
- 若要返回项目构建信息:需要给项目构建工具添加生成构建信息的配置,Maven示例如下,配置后会自动生成build-info.properties文件,Actuator会自动读取该文件内容:
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <executions> <execution> <goals> <goal>build-info</goal> </goals> </execution> </executions> </plugin> - 若要返回Git提交信息:需要引入
git-commit-id-plugin插件生成git.properties文件,Actuator会自动读取该文件内容,可配置management.info.git.mode=full返回完整Git提交信息。
- 若要返回项目构建信息:需要给项目构建工具添加生成构建信息的配置,Maven示例如下,配置后会自动生成build-info.properties文件,Actuator会自动读取该文件内容:
- 环境属性读取开关被关闭
如果你要读取配置文件中info.前缀的属性,需要确认management.info.env.enabled配置为true,Spring Boot 2.6版本该配置默认开启,如果你手动修改为false需要改回。 - 自定义InfoContributor未注册
如果你通过实现InfoContributor接口自定义info返回内容,需要确认该实现类被Spring上下文正确扫描注册为Bean,没有被拦截器、过滤器拦截。
内容的提问来源于stack exchange,提问作者user3162140
相关产品推荐
相关产品推荐

