Spring Boot与监控管理

时间:2023-01-11 23:35:29

概念:

通过引入spring-boot-starter-actuator,可以使用Spring Boot为我们提供的准生产环境下的应用监控和管理功能。我们可以通过HTTP,JMX,SSH协议来进行操作,自动得到审计、健康及指标信息等。

步骤:

  1. 引入spring-boot-starter-actuator
  2. 通过http方式访问监控端点
  3. 可进行shutdown(POST 提交,此端点默认关闭)

监控和管理端点中文对照

Spring Boot与监控管理

 

 

 

常用定制端点信息方法:

1.定制端点一般通过endpoints+端点名+属性名来设置。

2.修改端点id(endpoints.beans.id=mybeans)

3.开启远程应用关闭功能(endpoints.shutdown.enabled=true)

4.关闭端点(endpoints.beans.enabled=false)

5.开启所需端点

   endpoints.enabled=false endpoints.beans.enabled=true

6.定制端点访问根路径

   management.context-path=/manage

7.关闭http端点

   management.port=-1

 

springboot版本:1.5.12

 

http://localhost:8080/info 可以查看git的配置信息

git.properties:

git.branch=master
git.commit.id=xjkd33s
git.commit.time=2017-12-12 12:12:56

 

 

http://localhost:8080/XXXX

application.properties:

#设置监控端点可见
management.security.enabled=false

#测试redis的health
spring.redis.host=192.168.0.113

#设置localhost:8080/info的值
info.app.id=hello
info.app.version=1.0.0

#设置metrics端点不可见
#endpoints.metrics.enabled=false
endpoints.shutdown.enabled=true

#设置beans的名字,改后访问路径为:localhost:8080/mybean
#endpoints.beans.id=mybean
#设置beans的访问路径,改后访问路径为:localhost:8080/bean
#endpoints.beans.path=/bean
#endpoints.beans.enabled=false
#
#endpoints.dump.path=/du


# 关闭所有端点访问
#endpoints.enabled=false
# 打开beans端点的访问
#endpoints.beans.enabled=true

#设置访问端点前缀
management.context-path=/manage
#设置访问端口号
management.port=8181

 

 

自定义HealthIndicator:

/*
* 自定义健康状态指示器
* 1.编写一个指示器  实现healthIndicator 接口
* 2.指示器名字 xxxxHealthIndicator
* 3.加入容器中
* */

@Component
public class MyAppHealthIndicator implements HealthIndicator {
    @Override
    public Health health() {

        //自定义的检查方法
        //return  Health.up().build();//代表健康
        return  Health.down().withDetail("msg","服务异常").build();
    }
}