Endpoints介绍
actuator是由一个个的Endpoints组成的,每一个检测项都是一个Endpoints
默认的开放方式如下:
Property | Default |
---|---|
management.endpoints.jmx.exposure.exclude | |
management.endpoints.jmx.exposure.include | * |
management.endpoints.web.exposure.exclude | |
management.endpoints.web.exposure.include | info, health |
从上面的表格可以看出来 jmx默认开启了所有的endpoint,但是web只开放了info和health
启用端点
默认情况下,除shutdown
之外的所有端点都处于启用状态. 要启用端点,请使用其management.endpoint.<id> .enabled
属性。 以下示例启用shutdown
端点:
management.endpoint.shutdown.enabled=true
允许访问端点
开启端点之后,如果想通过web或jmx访问还需要配置允许访问
一般使用exclude来排除访问,用include允许访问,且exclude的优先级高于include
*
代表允许所有,如果是多个就用逗号分隔
*
需要加引号,否者程序会启动失败,这是因为*
在spring的配置文件中有特殊含义
系统内置Endpoints
ID | 描述 | JMX | WEB |
---|---|---|---|
auditevents | 显示应用暴露的审计事件(如认证进入、订单失败). | Yes | No |
beans | 显示应用程序中上下文里所有的bean和他们的关系. | Yes | No |
caches | 公开可用的缓存. | Yes | No |
conditions | 提供一份自动配置生效的条件情况,记录哪些自动配置条件通过了,那些没通过. | Yes | No |
configprops | 描述配置属性(包含默认值)如何注入bean. | Yes | No |
env | 获取全部环境属性 | Yes | No |
flyway | 提供一份flyway数据库升级记录信息. | Yes | No |
health | 显示应用程序的健康指标,这些值由HealthIndicator的实现类提供. | Yes | Yes |
httptrace | 显示HTTP足迹(默认显示最近100个HTTP request/repsponse). | Yes | No |
info | 显示应用程序的定制信息,这些信息由info打头的属性提供. | Yes | Yes |
integrationgraph | 显示 Spring Integration图. | Yes | No |
loggers | 显示和修改 配置的loggers. | Yes | No |
liquibase | 显示Liquibase数据库迁移的详细信息. | Yes | No |
metrics | 显示当前应用程序的“指标”信息. | Yes | No |
mappings | 描述全部的Url路径,以及他们的控制器(包含Actuator端点)的映射关系. | Yes | No |
scheduledtasks | 显示应用程序中的计划任务. | Yes | No |
sessions | 如果我们使用了Spring Session 展示应用中的session信息 | Yes | No |
shutdown | 允许应用程序正常关闭. | Yes | No |
threaddump | 显示线程活动的快照. | Yes | No |
heapdump | dump一份java堆信息. | N/A | No |
jolokia | 通过HTTP公开JMX bean(当Jolokia在类路径上时,不适用于WebFlux). | N/A | No |
logfile | 返回日志文件的内容(如果已设置logging.file或logging.path属性). | N/A | No |
prometheus | 以可以由Prometheus服务器抓取的格式公开指标. | N/A | No |