这期内容当中小编将会给大家带来有关SpringBoot服务监控机制的原理是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
<代码> SpringBoot> 代码中的监控可以分为<代码> HTTP> 代码端点和JMX代码> <代码>两种方式来监控当前应用的运行状况和指标收集
HTTP端点监控
执行器端点允许您监视应用程序并与之交互。<代码> SpringBoot> 代码包括许多内置的端点,并允许我们添加自己的端点。可以通过<代码> HTTP 代码>或<代码> JMX代码>启用或禁用每个端点,并公开(使其可以远程访问)。每个端点都有一个唯一的<代码> id> 代码,访问时可以通过如下地址进行访问:<代码> HTTP: ip:端口/{id}> 代码(SpringBoot 1。x),而在<代码> SpringBoot 2。x 代码>版本中,默认新增了一个<代码>/致动器> 代码作为基本路,访问地址则对应为:<代码> http: ip:港口/致动器/{id} 代码>。
使用http代码> <代码>监控非常简单,在<代码> SpringBoot> 代码项目中,引入如下依赖:
& lt; dependencies> & lt;才能dependency> ,,,& lt; groupId> org.springframework.boot ,,,& lt; artifactId> spring-boot-starter-actuator & lt;才能/dependency> & lt;/dependencies>
默认就可以通过地址<代码> http: localhost: 8080/致动器/健康> 代码,访问之后得到如下结果:
<代码> SpringBoot> 代码中提供了非常多的默认端点监控,但是出于安全考虑,默认情况下有些端点并不是开启状态,如<代码> 代码>端关闭点就是默认关闭的。
<强>内置端点强>
<代码> SpringBoot> 代码中默认提供的常用内置端点如下:
端点id描述auditevents公开当前应用程序的审计事件信息,需要AuditEventRepository Bean.beans展示程序中所有的Bean.caches公开可用的缓存.conditions展示配置类或者自动装配类中的条件,以及它们匹配或者不匹配的原因.configprops显示所有@ConfigurationProperties中的配置属性.env显示ConfigurableEnvironment中的所有环境健康显示应用程序运行状况信息.httptrace显示http跟踪信息(默认情况下统计最近100次请求),需要HttpTraceRepository Bean.info显示任意程序信息.integrationgraph显示春天集成图,需要依赖spring-integration-core.loggers展示和修改应用中的伐木工配置.metrics展示当前应用监控指标的度量.mappings展示所有@RequestMapping路径.scheduledtasks展示应用中的所有定时任务信息.sessions允许从春天会话支持的会话存储中检索和删除用户会话。需要使用基于春季会议网络应用程序.shutdown优雅的关闭程序,默认禁止了该端点的访问。虽然说这里的大部分端点都是默认开启的,但是默认暴露(允许对外访问)的只有健康<代码> 代码>和<代码>信息> 代码端点,所以如果需要允许端点对外暴露,可以通过如下配置(如果想要暴露所有的端点,则可以直接配置<代码>“*“> 代码):
管理: ,端点: 网络才能: ,才能暴露: ,,,包括:,(健康、信息映射),//或者直接配置,“*“
另外,开启或禁用某一个端点,也可以通过通过如下配置进行动态控制:
management.endpoint灵活;id>。启用=true
接下来我们挑选几个重点的端点来介绍一下。
<强>健康端点强>
<代码> 代码>健康断点默认只是展示当前应用健康信息,但是我们可以通过另一个配置打开详细信息,这样不仅仅会监控当前应用,还会监控与当前应用相关的其他第三方应用,如<代码>复述,代码>。
管理: ,端点: 健康:才能 null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null nullSpringBoot服务监控机制的原理是什么