运行时度量端点,包括: /metrics、/trace、/threaddump、/health 等
运行时度量端点
metrics 端点
访问结果
metrics 端点主要用于在项目运行中,查看计数器、度量器等,如:当前可用内存、空闲内存等
访问:http://localhost:8080/actuator/metrics ,可用查看所有的计数器、度量器名称, 访问 http://localhost:8080/actuator/metrics/{name} 可以查看具体信息
http://localhost:8080/actuator/metrics
1 | { |
http://localhost:8080/actuator/metrics/jvm.memory.max
1 | { |
http://localhost:8080/actuator/metrics/http.server.requests
1 | { |
metrics 端点介绍
前缀 | 分类 | 介绍 |
---|---|---|
jvm.gc.* | 垃圾收集器 | 已经发生过的垃圾收集次数、消耗时间,使用与标记-请求垃圾收集器和并行垃圾收集器java.lang.management.GarbageCollectorMXBean |
jvm.memory.* | 内存相关 | 分配给应用程序的内存数量和空闲的内容数量等 java.lang.Runtime |
jvm.classes.* | 类加载器 | JVM 类加载器加载与卸载的类的数量 java.lang.management.ClassLoadingMXBean |
process.*、system.cpu | 系统 | 系统信息,如:处理器数量java.lang.Runtime 、运行时间java.lang.management.RuntimeMXBean 、平均负载java.lang.management.OperatingSystemMXBean |
jvm.threads.* | JVM 线程池 | JVM 线程、守护线程数量、峰值等 java.lang.management.ThreadMXBean |
tomcat.* | tomcat | tomcat 相关内容 |
datasource.* | 数据源 | 数据源链接数据等,仅当 Spring 上下文存在 DataSource 才会有这个信息 |
httptrace 端点
httptrace 端点主要用于报告所有的 web 请求的详细信息,包括:请求方法、路径、时间戳、头信息等。http://localhost:8080/actuator/httptrace/
1 | { |
需要注意,/httptrace 端点只能显示最近的 100 个请求信息,其中也包含对 /httptrace 端点自己的请求。
threaddump 端点
threaddump 端点可以查看的应用程序的每个线程,其中包含线程的阻塞状态、所状态等,http://localhost:8080/actuator/threaddump/
1 | { |
health 端点
health 端点:查看当前应用程序的运行状态。 http://localhost:8080/actuator/health/
1 | { |
health 端点在特定情况下,会有额外的信息,如:登录状态、数据库状态等
Spring Boot 自带的监控指示器
键 | 健康指示器 | 说明 |
---|---|---|
none | ApplicationHealthIndicator | 永远为 UP |
db | DataSourceHealthIndicator | 如果数据库能连上,则内容为 UP 和数据库类型;否则为 DOWN |
diskSpace | DiskSpaceHealthIndicator | 如果可用空间大于阈值,则内容为 UP 和可用磁盘内容;否则为 DOWN |
jms | JmsHealthIndicator | 如果能连上消息代理,则为 UP 和 JMS 提供方名称;否则为 DOWN |
MailHealthIndicator | 如果能连上邮件服务器,则内容为 UP 个邮件服务器主机、端口;否则为 DOWN | |
mongo | MongoHealthIndicator | 如果能连上 MongoDb 服务器,则内容为 UP 和 MongoDB 服务器版本;否则为 DOWN |
rabbit | RabbitHealthIndicator | 如果能连上 Rabbit 服务器,则内容为 UP 和 Rabbit 版本号;否则为 DOWN |
redis | RedisHealthIndicator | 如果能连上 Redis 服务器,则内容为 UP 和 Redis 服务器版本;否则为 DOWN |
solr | SolrHealthIndicator | 如果能连上 Solr 服务器,则内容为 UP ;否则为 DOWN |
关闭应用程序
关闭应用程序可以使用 /actuator/shutdown 端点,使用 POST 请求 http://localhost:8080/actuator/shutdown
1 | { |
这是因为为了保护应用程序,shutdown 端点没有打开的原因,需要打开 shutdown 端点
1 | management: |
再次请求:
1 | { |
获取应用信息
获取应用信息使用 /actuator/info 端点,默认的响应是:
1 | {} |
可以通过带 info 前缀的属性,向 info 端点的响应增加内容,如:
1 | info: |
再次请求:
1 | { |