博客
关于我
Springboot使用Actuator健康监控以及可视化界面
阅读量:785 次
发布时间:2019-03-25

本文共 1709 字,大约阅读时间需要 5 分钟。

Spring Boot监控与管理引导

1. 概念与意义

随着微服务的普及,云部署的应用为了满足监控、追踪、审计等管理需求,通常会配置相关工具和中间件。而Spring Boot通过其Actuator模块,提供了一套完整的生产级别的监控管理方案,极大地简化了开发和部署过程。

2. 核心功能展示

Spring Boot的Actuator模块提供了多种功能端点,用户可以根据需要选择性地启用或关闭。以下是常用的核心功能:

  • 健康检查(health端点):提供应用的基本运行状态,包括CPU、内存使用情况、线程池状态等重要指标。
  • 服务发现与心跳检测:默认绑定到http://localhost:8080/heartbeats,用于监控集群中各服务的存活状态。
  • 配置信息管理:可以查看应用程序的配置信息,包括环境变量、属性文件内容等。
  • 日志审计:所有日志事件都可以被记录并提供审计功能,支持定期导出或存储。

3. 端点配置与暴露方式

默认情况下,所有Actuator端点都可以通过HTTP接口访问,具体的端点ID对应于URL路径。为了安全和灵活性,建议对selected端点进行限制访问。

application.properties中可以配置如下内容:

# 启用所有端点management.endpoints.enabled-by-default=true# 指定需要通过Web服务暴露的端点management.endpoints.web.exposure.include=*

如果需要个性化配置,可以选择关闭部分不需要的端点,例如关闭默认的beansenv端点:

# 关闭所有端点management.endpoints.enabled-by-default = false# 启用特定的端点management.endpoint.info.enabled = truemanagement.endpoint.caches.enabled = truemanagement.endpoints.web.exposure.include=*

4. Spring Boot Admin可视化管理

为了方便监控和管理,可以选择集成Spring Boot Admin,提供友好的可视化界面。

4.1 取件依赖

在服务端项目中添加依赖:

de.codecentric
spring-boot-admin-starter-server
2.3.1

客户端项目添加相关配置:

# 服务地址(需替换为实际服务地址)spring.boot.admin.client.service-url=http://localhost:8081

4.2 启动管理服务器

服务端启动类添加注解:

@SpringBootApplicationpublic class SpringBootAdminServerApplication {    public static void main(String[] args) {        SpringApplication.run(SpringBootAdminServerApplication.class, args);    }}@EnableAdminServer

4.3 连接 Toplam?

完成以上配置后,两项目(服务端和客户端)运行就能实现管理页面的访问。你可以在终端查看客户端注册到管理服务器的情况。

5. 其他功能说明

  • 事务跟踪(httptrace):记录前100次HTTP请求日志,非常有助于故障定位和性能分析。
  • 缓存信息:包括各常用缓存库的状态和配置信息,便于管理和观察。
  • 自动刷新:所有与时间相关的端点(如健康检查)默认采用短短的时间间隔自刷新,保证数据的及时性。

6. 扩展与优化

Spring Boot的Actuator模块功能非常强大,除了提供的默认端点,还可以通过自定义实现扩展其功能。例如,可以开发自定义逻辑的端点或使用第三方工具链进行更深入的监控。

转载地址:http://fhiuk.baihongyu.com/

你可能感兴趣的文章
NIFI大数据进阶_内嵌ZK模式集群1_搭建过程说明---大数据之Nifi工作笔记0015
查看>>
NIFI大数据进阶_外部ZK模式集群1_实际操作搭建NIFI外部ZK模式集群---大数据之Nifi工作笔记0017
查看>>
NIFI大数据进阶_实时同步MySql的数据到Hive中去_可增量同步_实时监控MySql数据库变化_操作方法说明_01---大数据之Nifi工作笔记0033
查看>>
NIFI大数据进阶_离线同步MySql数据到HDFS_01_实际操作---大数据之Nifi工作笔记0029
查看>>
NIFI大数据进阶_离线同步MySql数据到HDFS_02_实际操作_splitjson处理器_puthdfs处理器_querydatabasetable处理器---大数据之Nifi工作笔记0030
查看>>
NIFI大数据进阶_离线同步MySql数据到HDFS_说明操作步骤---大数据之Nifi工作笔记0028
查看>>
NIFI大数据进阶_连接与关系_设置数据流负载均衡_设置背压_设置展现弯曲_介绍以及实际操作---大数据之Nifi工作笔记0027
查看>>
NIFI数据库同步_多表_特定表同时同步_实际操作_MySqlToMysql_可推广到其他数据库_Postgresql_Hbase_SqlServer等----大数据之Nifi工作笔记0053
查看>>
NIFI汉化_替换logo_二次开发_Idea编译NIFI最新源码_详细过程记录_全解析_Maven编译NIFI避坑指南001---大数据之Nifi工作笔记0068
查看>>
NIFI汉化_替换logo_二次开发_Idea编译NIFI最新源码_详细过程记录_全解析_Maven编译NIFI避坑指南002---大数据之Nifi工作笔记0069
查看>>
NIFI集群_内存溢出_CPU占用100%修复_GC overhead limit exceeded_NIFI: out of memory error ---大数据之Nifi工作笔记0017
查看>>
NIFI集群_队列Queue中数据无法清空_清除队列数据报错_无法删除queue_解决_集群中机器交替重启删除---大数据之Nifi工作笔记0061
查看>>
NIH发布包含10600张CT图像数据库 为AI算法测试铺路
查看>>
Nim教程【十二】
查看>>
Nim游戏
查看>>
NIO ByteBuffer实现原理
查看>>
Nio ByteBuffer组件读写指针切换原理与常用方法
查看>>
NIO Selector实现原理
查看>>
nio 中channel和buffer的基本使用
查看>>
NIO_通道之间传输数据
查看>>