SpringBoot2.0 Actuator 监控参数说明
主要内容更 监控参数说明
Maven坐标
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
</dependency>
SpringBoot2.0 Actuator监控指标分析
| 序号 | 参数 | 参数说明 | 是否监控 | 监控手段 | 重要度 |
|---|---|---|---|---|---|
| ---JVM--- | |||||
| 1 | jvm.memory.max | JVM最大内存 | |||
| 2 | jvm.memory.committed | JVM可用内存 | 是 | 展示并监控堆内存和Metaspace | 重要 |
| 3 | jvm.memory.used | JVM已用内存 | 是 | 展示并监控堆内存和Metaspace | 重要 |
| 4 | jvm.buffer.memory.used | JVM缓冲区已用内存 | |||
| 5 | jvm.buffer.count | 当前缓冲区数 | |||
| 6 | jvm.threads.daemon | JVM守护线程数 | 是 | 显示在监控页面 | |
| 7 | jvm.threads.live | JVM当前活跃线程数 | 是 | 显示在监控页面;监控达到阈值时报警 | 重要 |
| 8 | jvm.threads.peak | JVM峰值线程数 | 是 | 显示在监控页面 | |
| 9 | jvm.classes.loaded | 加载classes数 | |||
| 10 | jvm.classes.unloaded | 未加载的classes数 | |||
| 11 | jvm.gc.memory.allocated | GC时,年轻代分配的内存空间 | |||
| 12 | jvm.gc.memory.promoted | GC时,老年代分配的内存空间 | |||
| 13 | jvm.gc.max.data.size | GC时,老年代的最大内存空间 | |||
| 14 | jvm.gc.live.data.size | FullGC时,老年代的内存空间 | |||
| 15 | jvm.gc.pause | GC耗时 | 是 | 显示在监控页面 | |
| ---TOMCAT--- | |||||
| 16 | tomcat.sessions.created | tomcat已创建session数 | |||
| 17 | tomcat.sessions.expired | tomcat已过期session数 | |||
| 18 | tomcat.sessions.active.current | tomcat活跃session数 | |||
| 19 | tomcat.sessions.active.max | tomcat最多活跃session数 | 是 | 显示在监控页面,超过阈值可报警或者进行动态扩容 | 重要 |
| 20 | tomcat.sessions.alive.max.second | tomcat最多活跃session数持续时间 | |||
| 21 | tomcat.sessions.rejected | 超过session最大配置后,拒绝的session个数 | 是 | 显示在监控页面,方便分析问题 | |
| 22 | tomcat.global.error | 错误总数 | 是 | 显示在监控页面,方便分析问题 | |
| 23 | tomcat.global.sent | 发送的字节数 | |||
| 24 | tomcat.global.request.max | request最长时间 | |||
| 25 | tomcat.global.request | 全局request次数和时间 | |||
| 26 | tomcat.global.received | 全局received次数和时间 | |||
| 27 | tomcat.servlet.request | servlet的请求次数和时间 | |||
| 28 | tomcat.servlet.error | servlet发生错误总数 | |||
| 29 | tomcat.servlet.request.max | servlet请求最长时间 | |||
| 30 | tomcat.threads.busy | tomcat繁忙线程 | 是 | 显示在监控页面,据此检查是否有线程夯住 | |
| 31 | tomcat.threads.current | tomcat当前线程数(包括守护线程) | 是 | 显示在监控页面 | 重要 |
| 32 | tomcat.threads.config.max | tomcat配置的线程最大数 | 是 | 显示在监控页面 | 重要 |
| 33 | tomcat.cache.access | tomcat读取缓存次数 | |||
| 34 | tomcat.cache.hit | tomcat缓存命中次数 | |||
| ---CPU--- | |||||
| 35 | system.cpu.count | CPU数量 | |||
| 36 | system.load.average.1m | load average | 是 | 超过阈值报警 | 重要 |
| 37 | system.cpu.usage | 系统CPU使用率 | |||
| 38 | process.cpu.usage | 当前进程CPU使用率 | 是 | 超过阈值报警 | |
| 39 | http.server.requests | http请求调用情况 | 是 | 显示10个请求量最大,耗时最长的URL;统计非200的请求量 | 重要 |
| 40 | process.uptime | 应用已运行时间 | 是 | 显示在监控页面 | |
| 41 | process.files.max | 允许最大句柄数 | 是 | 配合当前打开句柄数使用 | |
| 42 | process.start.time | 应用启动时间点 | 是 | 显示在监控页面 | |
| 43 | process.files.open | 当前打开句柄数 | 是 | 监控文件句柄使用率,超过阈值后报警 | 重要 |
附录
SpringBoot1.x的metrics信息
{
"mem":568029,
"mem.free":164376,
"processors":16,
"instance.uptime":223643888,
"uptime":223835542,
"systemload.average":0.18,
"heap.committed":415232,
"heap.init":419840,
"heap.used":250855,
"heap":415232,
"nonheap.committed":156480,
"nonheap.init":2496,
"nonheap.used":152797,
"nonheap":0,
"threads.peak":114,
"threads.daemon":99,
"threads.totalStarted":234,
"threads":113,
"classes":15474,
"classes.loaded":15474,
"classes.unloaded":0,
"gc.ps_scavenge.count":1808,
"gc.ps_scavenge.time":99224,
"gc.ps_marksweep.count":3,
"gc.ps_marksweep.time":5314
}
SpringBoot2.0的metrics信息
{
"names":[
"jvm.memory.committed",
"http.server.requests",
"jvm.buffer.memory.used",
"jvm.gc.memory.allocated",
"tomcat.sessions.created",
"tomcat.sessions.expired",
"jvm.memory.used",
"tomcat.global.error",
"jvm.gc.max.data.size",
"system.cpu.count",
"jvm.memory.max",
"tomcat.global.sent",
"jvm.buffer.total.capacity",
"jvm.buffer.count",
"process.files.max",
"jvm.threads.daemon",
"process.start.time",
"tomcat.sessions.active.max",
"tomcat.global.request.max",
"jvm.gc.live.data.size",
"process.files.open",
"process.cpu.usage",
"tomcat.threads.current",
"tomcat.servlet.request",
"jvm.gc.pause",
"process.uptime",
"tomcat.threads.busy",
"system.load.average.1m",
"tomcat.cache.hit",
"tomcat.global.request",
"tomcat.servlet.error",
"tomcat.servlet.request.max",
"tomcat.cache.access",
"tomcat.sessions.active.current",
"system.cpu.usage",
"jvm.threads.live",
"jvm.classes.loaded",
"jvm.classes.unloaded",
"jvm.threads.peak",
"tomcat.threads.config.max",
"jvm.gc.memory.promoted",
"tomcat.sessions.rejected",
"tomcat.global.received",
"tomcat.sessions.alive.max"
]
}
SpringBoot2.0 Actuator 监控参数说明的更多相关文章
- SpringBoot2.0 基础案例(16):配置Actuator组件,实现系统监控
本文源码 GitHub地址:知了一笑 https://github.com/cicadasmile/spring-boot-base 一.Actuator简介 1.监控组件作用 在生产环境中,需要实时 ...
- SpringBoot2.0 基础案例(07):集成Druid连接池,配置监控界面
一.Druid连接池 1.druid简介 Druid连接池是阿里巴巴开源的数据库连接池项目.Druid连接池为监控而生,内置强大的监控功能,监控特性不影响性能.功能强大,能防SQL注入,内置Login ...
- 零基础快速入门SpringBoot2.0教程 (四)
一.JMS介绍和使用场景及基础编程模型 简介:讲解什么是小写队列,JMS的基础知识和使用场景 1.什么是JMS: Java消息服务(Java Message Service),Java平台中关于面向消 ...
- SpringBoot Actuator监控【转】
springboot actuator 监控 springboot1.5和springboot2.0 的actuator在启动日志上的差异就很大了. springboot1.5在启动时会打印很多/XX ...
- springboot(十九):使用Spring Boot Actuator监控应用
微服务的特点决定了功能模块的部署是分布式的,大部分功能模块都是运行在不同的机器上,彼此通过服务调用进行交互,前后台的业务流会经过很多个微服务的处理和传递,出现了异常如何快速定位是哪个环节出现了问题? ...
- SpringBoot2.0初识
核心特性 组件自动装配: Web MVC , Web Flux , JDBC 等 激活: @EnableAutoConfiguration 配置: /META_INF/spring.factories ...
- SpringBoot2.0+Mybatis-Plus3.0+Druid1.1.10 一站式整合
SpringBoot2.0+Mybatis-Plus3.0+Druid1.1.10 一站式整合 一.先快速创建一个springboot项目,其中pom.xml加入mybatis-plus 和druid ...
- springboot2.0配置连接池(hikari、druid)
springboot2.0配置连接池(hikari.druid) 原文链接:https://www.cnblogs.com/blog5277/p/10660689.html 原文作者:博客园--曲高终 ...
- (转)Spring Boot (十九):使用 Spring Boot Actuator 监控应用
http://www.ityouknow.com/springboot/2018/02/06/spring-boot-actuator.html 微服务的特点决定了功能模块的部署是分布式的,大部分功能 ...
随机推荐
- class类 - extends
继承是面向对象中一个比较核心的概念.ES6 class的继承与java的继承大同小异,如果学过java的小伙伴应该很容易理解,都是通过extends关键字继承.相较于ES5当中通过原型链继承要清晰和方 ...
- Android开发中常见问题分析及解决
最近公司有新的业务需求,需要开发一款APP,因为我开发过Android APP(我想告诉他们,那是4年前的事了,嘤嘤嘤),就把开发任务交给我了,当然也不是我一个人啦,让我组开发小组,说白了,就是让我来 ...
- 解决wpscan无法更新
如果wpscan无法更新的话 一般的原因都是源或者更新地址无法访问 下面解决 updatedb #先更新一下系统的索引 locate wpscan #定位到wpscan的目录 大概就是updater. ...
- perl语言的线程使用
参考的教程链接是 https://www.cnblogs.com/migrantworkers/p/6973459.html 1.Perl 多线程的使用,join 和 detach 的区别 ,join ...
- dubbo框架梳理
Dubbo分层 Dubbo框架运行主要分如下九层: 配置层:config 服务代理层:proxy 注册中心层:registry 路由层:cluster 监控层:monitor 远程调用层:protoc ...
- 【nodejs代理服务器一】nodejs http-proxy 开发反向代理服务器,防火墙,过滤常见的web渗透
事出有因 最近web系统引来了黑客的攻击,经常被扫描,各种漏洞尝试. 分析攻击日志,有几种常见的攻击手段: 上传webshell 远程执行命令漏洞 sql注入 xxs 攻击 试探各种开源框架爆出来的漏 ...
- GNS3 介绍
什么是GNS3? GNS3是一款模拟CISCO网络设备的模拟器,和CPT(Cisco Packet Tracer)相比.GNS3运行的是真实设备的IOS,命令集更全,在如有部分有非常好的表现,交换部分 ...
- jquery中prop,attr,data的区别
这两天翻了jq的源码,今天看到了jq关于数据存储的几个方法,遂总结一下,和小伙伴没分享一下,哪里说的不对,还望批评指正~~~ 废话不多说,直接上代码: $(function(){ $('#div1') ...
- Windows 下 mysql 安装
mysql官网下载地址:https://downloads.mysql.com/archives/community/ 以5.7.20版本为例 首先安装包解压后,没有网上教程里面提到的data文件夹和 ...
- PHP 获取上传文件的实际类型
方案一: mime_content_type ( string $filename ) : string (PHP 4 >= 4.3.0, PHP 5, PHP 7) mime_content_ ...