本文共 1709 字,大约阅读时间需要 5 分钟。
随着微服务的普及,云部署的应用为了满足监控、追踪、审计等管理需求,通常会配置相关工具和中间件。而Spring Boot通过其Actuator模块,提供了一套完整的生产级别的监控管理方案,极大地简化了开发和部署过程。
Spring Boot的Actuator模块提供了多种功能端点,用户可以根据需要选择性地启用或关闭。以下是常用的核心功能:
http://localhost:8080/heartbeats
,用于监控集群中各服务的存活状态。默认情况下,所有Actuator端点都可以通过HTTP接口访问,具体的端点ID对应于URL路径。为了安全和灵活性,建议对selected端点进行限制访问。
在application.properties
中可以配置如下内容:
# 启用所有端点management.endpoints.enabled-by-default=true# 指定需要通过Web服务暴露的端点management.endpoints.web.exposure.include=*
如果需要个性化配置,可以选择关闭部分不需要的端点,例如关闭默认的beans
和env
端点:
# 关闭所有端点management.endpoints.enabled-by-default = false# 启用特定的端点management.endpoint.info.enabled = truemanagement.endpoint.caches.enabled = truemanagement.endpoints.web.exposure.include=*
为了方便监控和管理,可以选择集成Spring Boot Admin,提供友好的可视化界面。
在服务端项目中添加依赖:
de.codecentric spring-boot-admin-starter-server 2.3.1
客户端项目添加相关配置:
# 服务地址(需替换为实际服务地址)spring.boot.admin.client.service-url=http://localhost:8081
服务端启动类添加注解:
@SpringBootApplicationpublic class SpringBootAdminServerApplication { public static void main(String[] args) { SpringApplication.run(SpringBootAdminServerApplication.class, args); }}@EnableAdminServer
完成以上配置后,两项目(服务端和客户端)运行就能实现管理页面的访问。你可以在终端查看客户端注册到管理服务器的情况。
Spring Boot的Actuator模块功能非常强大,除了提供的默认端点,还可以通过自定义实现扩展其功能。例如,可以开发自定义逻辑的端点或使用第三方工具链进行更深入的监控。
转载地址:http://fhiuk.baihongyu.com/