Actuator自定义节点路径 & 监控服务自定义配置
既然Actuator
给我们内置提供了节点映射,我们为什么还需要进行修改呢?
正因为如此我们才需要进行修改!!!
路径都是一样的,很容易就会暴露出去
,导致信息泄露,发生一些无法估计的事情,如果我们可以自定义节点的映射路径
或者自定义监控服务的管理信息
,这样就不会轻易的暴露出去,Actuator
已经为了们提供了对应的方法来解决这个问题,下面我们来看下吧。
本章目标
自定义Actuator
节点映射路径、监控服务
配置信息等,提高监控服务的安全性。
构建项目
最近这几篇有关Actuator
的文章使用的源码都是同一个,源码已经上传了码云,点击下载源码汇总
,源码位置:SpringBoot2.x/hengboy-spring-boot-actuator
,本章也使用之前创建的项目,下载后通过idea
工具打开,在原来基础上进行修改。
自定义监控节点映射路径
之前章节讲到了Actuator
为我们提供了org.springframework.boot.actuate.autoconfigure.endpoint.web.WebEndpointProperties
类,用于配置监控管理web
端的信息,映射路径也在该配置类中,通过修改management.endpoints.web.path-mapping
配置来修改指定的节点映射路径
,如下所示:
1 | # 管理节点配置 |
path-mapping
参数值需要key->value
形式接收,在WebEndpointProperties
类内是以Map<String, String>
类型定义的。
key
:原监控节点映射路径
,如:health
value
,新的监控节点映射路径
,如:healthcheck
修改后我们就可以通过访问/actuator/healthcheck
访问监控的健康信息。
如果你修改了
management.endpoints.web.base-path
,那么前缀为你修改后得值,具体可以访问/springboot-actuator-default.html了解详情。
运行测试
启动本章项目,打开浏览器
或者终端
,如下为终端示例:
1 | ➜ ~ curl http://localhost:8080/healthcheck |
通过访问/healthcheck
可以查询到详细的信息。
自定义监控端口号
默认Actuator
监控服务的端口号
跟项目端口号
一致,本章项目的端口号为8080
所以我们通过http://localhost:8080
前缀就可以访问到监控节点
,那我们该怎么修改监控节点端口号
呢?
ManagementServerProperties
Acutator
内置了配置类org.springframework.boot.actuate.autoconfigure.web.server.ManagementServerProperties
来进行自定义设置监控服务
基本信息,该配置类内包含了端口号(port)
、服务地址(address)
、安全SSL(ssl)
等。
我们通过修改management.server.port
进行自定义监控端口号
,如下所示:
1 | # 管理节点配置 |
运行测试
修改完成后,重启本章项目,然后通过如下命令访问:
1 | ➜ ~ curl http://localhost:8001/healthcheck |
通过8001
端口已经可以访问到开放的监控节点,修改后再次访问同项目端口号的地址会出现404
错误信息。
总结
本章介绍了自定义Actuator
开放的监控节点
的映射路径
,还简单介绍了通过修改management.server.port
参数进行自定义监控服务
的管理端口号
。
Actuator自定义节点路径 & 监控服务自定义配置
https://blog.minbox.org/springboot-actuator-change-mapping.html