博客
关于我
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=*

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

# 关闭所有端点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/

你可能感兴趣的文章
Python3学习笔记3,变量、运算符
查看>>
Python3学习笔记(urllib模块的使用)
查看>>
python3安装scapy_Linux下安装scapy-python3
查看>>
python3实现socket通信
查看>>
Python关于numpy.transpose函数详细解析附代码
查看>>
Python3导入自定义模块的3种方式
查看>>
python3打开txt文件_使用Python 3从文本文件读取句子并添加到列表中
查看>>
python3爬虫抓取智联招聘职位信息代码
查看>>
Python3爬虫数据入数据库---把爬取到的数据存到数据库,带数据库去重功能
查看>>
python3的 pymysql把mysqldb库取代了,让python 3支持mysqldb的解决方法
查看>>
Python3笔记——IDE的选择
查看>>
python3简单使用requests 用户代理,cookie池
查看>>
Python3组播通信编程实现教程(发送者+接收者)
查看>>
Python3编写网络爬虫10-数据存储方式三-CSV文件存储
查看>>
python3读取redis返回数据带有'b'的问题
查看>>
Python3连接MySQL
查看>>
Python关于isinstance函数的解析 | 附Demo(全)
查看>>
Python3:setup.py:完成所有任务的PIP安装(Build_ext+Install)
查看>>
python4.0 gil_Python 并发编程系列--1、浅谈GIL历史及对多线程的影响
查看>>
python60行绘图程序_天底下最简单的QT画图板,就一个类,60行代码
查看>>