Spring Boot监控
Java EE 规范中由 JMX 来监控管理应用, Spring Boot 也提供了 Actuator 功能来完成类似的监控,通过 HTTP ,JMX,甚至是远程脚本( SSH )来查看 SpringBoot 应用的配置、各种指标、健康程度等。它能查看和监控以下信息
- Spring Boot 的配置信息
- Spring Boot 配置的 Bean 信息
- 最近请求的 HTTP 信息
- 数据源 NoSQL 等数据状态
- 在线查看日志 在线日志配置修改:
- 有@RequestMappin 注解的 URL 路径
- 自动装配信息汇总
- 打印虚拟机的线程械
- Dump 内存;
- 应用的各种指标、汇总
- 自定义监控指标。
使用 Acutator 功能与 Spring Boot 使用其他功能一样简单,只需要在 pom 中增加如下依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
Spring Boot 默认并不启用所有的监控,需要做如下配置:endpoints.default.web.enabled=true
考虑到系统监控涉及系统安全,因此,最好修改配置文件,设置系统监控的访问端口,如management.port=8081
一:HTTP 跟踪
Spring Boot 提供了 trace 跟踪功能,能查看最近的 HTTP 请求和响应,在浏览器输入:http://localhost:8081/application/trace
输出信息:
二:日志查看
Actuator 允许查看日志配置,还允许修改日志等级配置, Actuator 也可以在线查看日志内容在浏览器中输入:http //localhost:8081/application/loggers
三:线程栈信息
在Springboot中,可以通过dump来获取时刻的线程栈信息,类似JDK自带的jstack命令的输出结果:http //localhost:8081/application/dump
四:内存信息
Spring Boot heapdump 类似 JDK 提供的 jmap 工具,能将内存镜像压缩下载以提供分析在浏览器中输入:http //localhost:8081/application/heapdump
五:查看 URL 映射
Autuator的mappings输出所有通过注解@RequestMapping设置的URL映射。
六:Spring容器管理的Bean
beans输出。
七:其他监控

=========================================================================================================================================
我只是一粒简单的石子,未曾想掀起惊涛骇浪,也不愿随波逐流
每个人都很渺小,努力做自己,不虚度光阴,做真实的自己,无论是否到达目标点,既然选择了出发,便勇往直前
我不能保证所有的东西都是对的,但都是能力范围内的深思熟虑和反复斟酌

浙公网安备 33010602011771号