您的位置:首页 > 编程语言 > Java开发

三十三、Springboot整合 Actuator

2018-10-27 16:43 363 查看

(一)Actuator简介
参见Spring Boot 2.0 中使用 Actuator
对Actuator Endpoints简单进行归纳分类:
监控类:“端点信息”、“应用信息”、“外部化配置信息”、“指标信息”、“健康检查”、“Bean管理”、“Web URL 映射管理”、“Web URL 跟踪”

管理类:“外部化配置”、“日志配置”、“线程dump”、“堆dump”、“关闭应用”

Spring Cloud扩展Actuator Endpoints:
上下文重启:/restart
暂停:/pause
恢复:/resume

(二)具体实现
1、首先设置访问端口和根路径,暴露可访问的接口

#监控端口
management.server.port=8081
#监控根节点,不设置,就要在路径中加上“/actuator”
management.endpoints.web.base-path=/
#开启 actuator 所有端点,默认只开放 info、health端点;同时*在yml文件中是关键字,需要加引号“*”
management.endpoints.web.exposure.include=*
#显示健康的详细信息
management.endpoint.health.show-details=always
#激活 restart Endpoint
management.endpoint.restart.enabled=true

2、访问某个监控接口
  备注:访问的路径上一定要加上“/actuator”路径,例如访问应用的环境变量:http://localhost:8081/actuator/env ,若设置

management.endpoints.web.base-path=/
,则无需加“/actuator”路径。

(三)自定义健康指标

@SpringBootApplication
public class ConfigClientApplication {
public static void main(String[] args) {
SpringApplication.run(ConfigClientApplication.class, args);
}

/**
* 自定义健康指标
*/
@Bean
public MyHealthIndicator myHealthIndicator(){
return new MyHealthIndicator();
}

private class MyHealthIndicator implements HealthIndicator{
@Override
public Health health() {
Health.Builder builder = Health.status(Status.UP);
//添加自定义指标
builder.withDetail("name", "MyHealthIndicator");
builder.withDetail("timestamp", System.currentTimeMillis());

return builder.build();
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: