一、监控管理
通过引入 spring-boot-starter-actuator,可以使用 Spring Boot 为我们提供的准生产环境下的应用监控和管理功能。我们可以通过 HTTP, JMX, SSH 协议来进行操作,自动得到审计、健康及指标信息等 。
步骤:
- 引入 spring-boot-starter-actuctor
1 | <dependency> |
通过 http 方式访问监控点端点
首先在配置文件中把端点暴露出来
在 application.properties 中配置端点,
暴露部分端点
management.endpoints.web.exposure.include=info,health,beans,env
暴露所有端点
management.endpoints.web.exposure.include=*
不暴露 beans 端点
management.endpoints.web.exposure.exclude=beans
在上述配置中,首先使用 management.endpoints.web.exposure.include 暴露所有的端点,接着使用 management.endpoints .web.exposure.exclud 排除 en 端点,这样就能够暴露除 env 外的所有 ctuator 端点了。
http://localhost:8080/actuator/health 访问项目监控需要加前缀 /actuator
如果不在配置文件中配置把端口暴露出来,则会出现以下这样的情况。
因为 actuator 默认只支持端点 /health、/info 所以访问 /env 会出现 404 页面。
监控点和管理端点
端点名 | 描述 |
---|---|
autoconfig | 所有自动配置信息 |
auditevents | 审计事件 |
beans | 所有 Bean 的信息 |
configprops | 所有配置属性 |
dump | 线程状态信息 |
env | 当前环境信息 |
health | 应用健康状况 |
info | 当前应用信息 |
metrics | 应用的各项指标 |
mappings | 应用@RequestMapping 映射路径 |
shutdown | 关闭当前应用(默认关闭) |
trace | 追踪信息(最新的 http 请求) |
示例:访问必须添加前缀/actuator
可进行 shutdown (POST 提交, 此端点默认关闭)
在配置文件中配置
1 | #启用shutdown |
二、定制端点
# Actuator 管理端口
management.server.port=8000#暴露 有端
management.endpoints.web.exposure.include =女#默认情况下 有端点都不启用,此时需要按需启用端点
management.endpoints.enabled-by-default=false#启用端点 info
management.endpoint.info.enabled=true#启用端点 beans
management.endpoint.beans.enabled=true#启用端点 configprops
management.endpoint.configprops.enabled=true#启用端点 env
management.endpont.env.enabled=true#启用端点 health
management.endpoint.health.enabled=true#启用端点 mappings
management.endpont.mappings.enabed=true#启用端点 shutdown
management.endpoint.shutdown.enabled=true/# Actuator 端点前缀
management.endpoints.web.base -path=/manage#将原来的 mappings 端点的请求路径修改为 urlMappings
management.endpoints.web.path-mapping.mappings=request_mappings# Spring MVC 视图解析器配置
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.Jsp