Java Spring Boot 2.0性能监控实战与Actuator机制解析

内容摘要:应用程序性能监控和日志采集管理是非常重要问题,Java Spring Boot网站、API等应用程序如何进行远程性能监控、日志采集,远程控制,本次课程一起深入学习Actuator新特性与API机制。APM是分布式系统运维非常重要的知识点,开源社区许多经典的分布式性能监控方案。
Java Spring Boot2.0不进允许性能监控,还可以进行远程控制。功能十分强大。

1、APM = Application Performance Management 采集指标
      目的是监控和管理应用软件性能和可用性。通过监控和诊断复杂应用程序的性能问题,来保证分布式系统的良好运行。
   
2、Java Spring Boot 性能监控 指标多维度
Java Spring Boot 2.0性能监控实战与Actuator机制解析
Spring Boot 2014年4月性能监控和管理组件Actuator 。 
使用HTTP Endpoint或JMX,运行状态指标数据收集
health, metrics, info, dump, env, etc
2.0以后改进监控地址带有/actuator前缀
例如/actuator/health监控健康状态信息
禁用management.endpoint.shutdown.enabled=true
单个禁用
management.endpoints.enabled-by-default=false
management.endpoint.info.enabled=true


3、Java Spring Boot 2.0性能监控新特性 
   Java Spring Boot 2.0内置性能监控Endpoint,可以直接配置使用

内置EndPoint ID

描述

默认启用

auditevents

暴露审计事件信息

Yes

beans

Beans列表

Yes

caches

缓存信息

Yes

conditions

评估配置的条件信息

Yes

configprops

显示 @ConfigurationProperties列表

Yes

env

环境信息

Yes

flyway

Flyway 数据掐你一信息

Yes

health

健康信息

Yes

httptrace

显示HTTP 跟踪信息(默认最近100 HTTP请求应答).

Yes

info

显示程序信息

Yes

integrationgraph

集成图Spring Integration graph.

Yes

loggers

显示与修改日志信息

Yes

liquibase

Liquibase 数据库迁移信息

Yes

metrics

显示‘metrics指标信息

Yes

mappings

显示@RequestMapping路径列表

Yes

scheduledtasks

显示调度任务

Yes

sessions

查询和删除会话Spring Session-backed session store. 不支持reactive web applications.

Yes

shutdown

优雅地关闭应用

No

threaddump

执行线程Dump thread dump.

Yes

 这些Endpoint 都可以在配置文件里打开或者关闭,
4、实战 Actuator性能监控
 创建一个 java Spring Boot 2.0项目,然后添加Actuator依赖,
<dependency>
  <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-security</artifactId>
</dependency>
启动项目,访问http://localhost:8080/actuator/可以查看默认的监控Endpoint端点列表。
Java Spring Boot 2.0性能监控实战与Actuator机制解析
5、安全保护
Spring Boot Actuator集成Spring Security安全框架,可以直接配置使用,也可以代码方式,最简单的Form表单验证、Basic验证例子如下:
management.security.enabled = true
management.security.roles = ADMIN
security.basic.enabled = true
security.user.name = frankxulei
security.user.password = alibaba

6、视频课程
7、高级面试题
  •  APM架构
  • 监控指标
  • 监控框架
  • Actuator底层实现
  • Micrometer优势
  • 配置文件参数
  • 能不能监控TOMCAT
  • 数据库、NoSQL数据库监控实现机制
8、Micrometer性能采集器
Micrometer是多维度指标收集器,语言中立的API。

通过类路径和配置,可以支持多系统导出数据,集成框架!
Spring Boot 2 Actuator中包含的指标收集工具。 
Spring Boot 1.5,1.4和1.3支持,额外依赖项。
Micrometer为Spring Boot 1中counters和gauges增强功能。
例如, Micrometer Timer能够生成吞吐量,总时间,最近样本的最大延迟,预先计算的百分位数,百分位柱状图相关的时间序列。 和SLA边界计数。
支持更多的监控工具如Prometheus, Datadog, Wavefront, SignalFx, Influx, etc
Spring Boot 2强化特性 
阿里巴巴Java群2200多人,
直播地址:Java技术进阶群
进群方式:钉钉扫码入群
Java Spring Boot 2.0性能监控实战与Actuator机制解析

上一篇:二十三:从库的SQL 线程(MTS协调线程)和sql_slave_skip_counter参数(笔记)


下一篇:Java线程池,工作窃取算法