Eug*_*min 5 spring-boot-actuator
有没有办法让Spring Actuator定期进行健康检查?我在想,也许可以选择在我的 HealthIndicator 自定义实现中添加一些 Runnable,但对我来说,这个想法看起来不太好。我想检查 Cassandra,如果失败,请执行一些紧急操作
您可以定期从某些外部监控系统(如 Nagios)调用 /health 端点,并在响应不是 HTTP 200 时采取适当的操作。如果您对 /health 端点进行经过身份验证的调用,则响应正文包含确切失败的详细信息(未经身份验证的调用有只是 HTTP 响应代码)。
Spring Actuator 本身并不意味着执行任何操作。它仅供/health端点使用。
但是,如果您确实想扩展这个想法并对失败的健康检查采取一些操作,那么请查看 spring-boot Actuator 的源代码。
https://github.com/spring-projects/spring-boot/tree/master/spring-boot-project/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/cassandra
Run Code Online (Sandbox Code Playgroud)
它包含每项健康检查的实施。您可以轻松地重用它们并编写自己的实现来HealthIndicator定期调用它们。
详情请查看org.springframework.boot.actuate.health.HealthEndpoint 外观。
你可以定期做同样的事情。
请注意,这可能不是最好的主意。您将严重依赖特定版本执行器的实现细节。更新 Sping Boot 版本后(他们经常发布新版本,由于安全修复和新功能,更新是个好主意),您的自定义逻辑可能无法编译、停止工作或工作不正确。
| 归档时间: |
|
| 查看次数: |
7245 次 |
| 最近记录: |