学习笔记:JavaEE开发的颠覆者SpringBoot实战(十一)应用监控

一. http

Spring-boot-actuator module 可帮助您在将应用程序投入生产时监视和管理应用程序。您可以选择使用 HTTP 端点或 JMX 来管理和监控您的应用程序。Auditing, health, and metrics gathering 也可以自动应用于您的应用程序。

添加依赖,开启监控

<dependencies>
    <dependency>
        <groupid>org.springframework.boot</groupid>
        spring-boot-starter-actuator</artifactid>
    </dependency>
</dependencies>

特性

Endpoints

Actuator endpoints 允许你去监控和操作你的应用。SpringBoot包含了许多内置的端点,当然你也可以添加自己的端点。比如 health 端点就提供了基本的应用健康信息。

Metrics

Spring Boot Actuator 提供 dimensional metrics 通过集成 Micrometer.

Audit

Spring Boot Actuator 有一套灵活的审计框架会发布事件到 AuditEventRepository。

2.0 更新

基础路径更新

基础路径由 / 调整到 /actuator 下

启动端点 endpoint

默认只启动了 health 和 info 端点,可以通过 application.yml 配置修改:

management:
    endpoints:
        web:
        exposure:
           include: health,info,env,metrics

项目启动时可以看到暴露出来的接口信息:

 

主要的端点

HTTP方法路径描述鉴权
GET/autoconfig查看自动配置的使用情况true
GET/configprops查看配置属性,包括默认配置true
GET/beans查看bean及其关系列表true
GET/dump打印线程栈true
GET/env查看所有环境变量true
GET/env/{name}查看具体变量值true
GET/health查看应用健康指标false
GET/info查看应用信息false
GET/mappings查看所有url映射true
GET/metrics查看应用基本指标true
GET/metrics/{name}查看具体指标true
POST/shutdown关闭应用true
GET/trace查看基本追踪信息true

通过web访问暴露的端点

https://localhost:8077/actuator/metrics

 

{"names":["jvm.memory.max","process.files.max","jvm.gc.memory.promoted","tomcat.cache.hit","system.load.average.1m","tomcat.cache.access","jvm.memory.used","jvm.gc.max.data.size","jvm.memory.committed","system.cpu.count","logback.events","tomcat.global.sent","jvm.buffer.memory.used","tomcat.sessions.created","jvm.threads.daemon","system.cpu.usage","jvm.gc.memory.allocated","tomcat.global.request.max","tomcat.global.request","tomcat.sessions.expired","jvm.threads.live","jvm.threads.peak","tomcat.global.received","process.uptime","tomcat.sessions.rejected","process.cpu.usage","tomcat.threads.config.max","jvm.classes.loaded","jvm.gc.pause","jvm.classes.unloaded","tomcat.global.error","tomcat.sessions.active.current","tomcat.sessions.alive.max","jvm.gc.live.data.size","tomcat.servlet.request.max","tomcat.threads.current","tomcat.servlet.request","process.files.open","jvm.buffer.count","jvm.buffer.total.capacity","tomcat.sessions.active.max","tomcat.threads.busy","process.start.time","tomcat.servlet.error"]}

https://localhost:8077/actuator/metrics/jvm.memory.max

 

{"name":"jvm.memory.max","measurements":[{"statistic":"VALUE","value":3.455057919E9}],"availableTags":[{"tag":"area","values":["heap","nonheap"]},{"tag":"id","values":["Compressed Class Space","PS Survivor Space","PS Old Gen","Metaspace","PS Eden Space","Code Cache"]}]}

Micrometer

Springboot2 在 spring-boot-actuator 中引入了 micrometer ,对 1.x 的 metrics 进行了重构,另外支持对接的监控系统也更加丰富( Atlas、Datadog、Ganglia、Graphite、Influx、JMX、NewRelic、Prometheus、SignalFx、StatsD、Wavefront )。

Prometheus

SpringBoot2.x中的Prometheus应用

Influx

添加依赖

<dependency>
    <groupid>io.micrometer</groupid>
    <artifactid>micrometer-registry-influx</artifactid>
</dependency>

二. JMX

在控制台调用java内置的jconsole来实现JMX监控

打开cmd --> 输入命令:jconsole --> 在jconsole弹出页面选择相应的进程 --> 点击连接

 

三.SSH

spring boot 2.X弃用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值