Java项目Actuator metrics端点未生效,如何正确添加?
解决Spring Boot Actuator Metrics端点不可访问及启动失败问题
一、排查Metrics端点不可访问的基础配置问题
- 确认端点启用状态:检查
application.yml,确保未禁用metrics端点,删除或修改以下禁用配置(若存在):
metrics端点默认是启用状态,无需额外开启。management: endpoint: metrics: enabled: false - 确认端点暴露配置:你的现有配置
management.endpoints.web.exposure.include: "*"已覆盖所有端点,也可明确指定确保生效:management: endpoints: web: exposure: include: metrics,health,info
二、修复自定义Bean导致的启动失败问题
你手动创建CacheMetricsRegistrar Bean的操作完全多余,Spring Boot自动配置已默认处理缓存指标绑定:
- 若使用Caffeine缓存,只需确保引入必要依赖:
implementation("org.springframework.boot:spring-boot-starter-cache") implementation("com.github.ben-manes.caffeine:caffeine") - 删除你添加的
CacheMetricsRegistrarBean代码,该操作会与自动配置的Bean冲突,导致启动时出现非零退出码错误。
三、验证Metrics端点可用性
完成上述配置后重启应用,访问http://localhost:8080/actuator/metrics即可查看所有可用指标列表;若需查看具体指标(如缓存相关),可访问http://localhost:8080/actuator/metrics/cache.gets这类具体路径。
额外排查点
若仍无法访问:
- 检查Spring Security是否拦截请求,若使用Spring Security,需添加端点权限配置:
@Configuration public class SecurityConfig { @Bean public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception { http.authorizeHttpRequests(auth -> auth .requestMatchers("/actuator/**").permitAll() .anyRequest().authenticated() ); return http.build(); } } - 查看应用启动日志,排查是否存在MeterRegistry初始化失败、指标组件缺失等错误信息。
内容的提问来源于stack exchange,提问作者Настя
相关产品推荐
相关产品推荐

