首页 > 其他分享 > Prometheus 的监控方法论

Prometheus 的监控方法论

时间:2023-04-15 23:03:51浏览次数:48  
标签:方法论 请求 错误 系统 指标 Prometheus 监控 饱和度 使用率

许多监控框架的重点都是故障检测,即检测是否发生了特定的系统事件或处于什么状态(这是Nagios的风格)。当收到有关特定系统事件的通知时,我们通常会查看收集到的任何指标,以找出发生的确切情况及其原因。在这个思路下,指标被视为故障检测的副产品或者补充。

正确使用指标可以提供基础设施的动态实时信息,帮助你管理和做出有关系统的最佳决策。此外,通过异常检测和模式分析,指标有可能在故障或问题发生之前,或者是在特定系统事件导致系统瘫痪之前就有所察觉。

我们通常以固定的时间间隔收集数据,该时间间隔被称为颗粒度(granularity)或分辨率(resolution),取值可以从1秒到5分钟,甚至到60分钟或更长。正确地选择指标的颗粒度至关重要,若选择得太粗糙,则很容易错过某些细节。

第一种指标类型是测量型(gauge),这种类型是上下增减的数字,本质上是特定度量的快照。常见的监控指标如CPU、内存和磁盘使用率等都属于这个类型。

第二种类型是计数型(counter),这种类型是随着时间增加而不会减少的数字。虽然它们永远不会减少,但有时可以将其重置为零并再次开始递增。应用程序和基础设施的计数型示例包括系统正常运行时间、设备收发包的字节数或登录次数。

第三种类型直方图(histogram)是对观察点进行采样的指标类型,可以展现数据集的频率分布。将数据分组在一起并以这样的方式显示,这个被称为“分箱”(binning)的过程可以直观地查看数值的相对大小。

USE是使用率(Utilization)、饱和度(Saturation)和错误(Error)的缩写,该方法是由Netflix的内核和性能工程师Brendan Gregg开发的。USE方法建议创建服务器分析清单,以便快速识别问题。

USE方法可以概括为:针对每个资源,检查使用率、饱和度和错误。该方法对于监控那些受高使用率或饱和度的性能问题影响的资源来说是最有效的

资源:系统的一个组件。在Gregg对模型的定义中,它是一个传统意义上的物理服务器组件,如CPU、磁盘等,但许多人也将软件资源包含在定义中。

使用率:资源忙于工作的平均时间。它通常用随时间变化的百分比表示。

饱和度:资源排队工作的指标,无法再处理额外的工作。通常用队列长度表示。

错误:资源错误事件的计数。

Google的四个黄金指标主要关注的不是系统级的时间序列数据,更多是针对应用程序或面向用户的部分

延迟:服务请求所花费的时间,需要区分成功请求和失败请求。例如,失败请求可能会以非常低的延迟返回错误结果。

流量:针对系统,例如,每秒HTTP请求数,或者数据库系统的事务。

错误:请求失败的速率,要么是HTTP 500错误等显式失败,要么是返回错误内容或无效内容等隐式失败,或者基于策略原因导致的失败——例如,强制要求响应时间超过30ms的请求视为错误。

饱和度:应用程序有多“满”,或者受限的资源,如内存或IO。这还包括即将饱和的部分,例如正在快速填充的磁盘。

要建立一个出色的通知系统,需要考虑以下基础信息:

  1. 哪些问题需要通知
  2. 谁需要被告知
  3. 如何告知他们
  4. 多久告知他们一次
  5. 何时停止告知以及何时升级到其他人

标签:方法论,请求,错误,系统,指标,Prometheus,监控,饱和度,使用率
From: https://blog.51cto.com/key3feng/6192500

相关文章

  • 国产监控之光-夜莺监控(Nightingale)
    国产监控之光-夜莺监控(Nightingale)夜莺是什么?夜莺是一个服务端组件,类似Grafana,可以对接不同的TSDB时序数据库作为数据源,支持的TSDB时序数据库如Prometheus、VictoriaMetrics、Thanos等等,只要数据进到这些库里了,夜莺就可以对数据源的数据进行分析、告警、可视化,以及后续的事件处理......
  • 67、K8S-部署管理-Helm部署Prometheus、TSDB数据持久化
    Kubernetes学习目录1、准备仓库1.1、配置prometheus仓库1.1.1、增加prometheus仓库helmrepoaddprometheus-communityhttps://prometheus-community.github.io/helm-charts1.1.2、查询增加的结果]#helmrepolistNAMEURL......
  • Java + Jpcap实现监控 IP包流量
    Java+Jpcap实现监控IP包流量说明:本设计是计算机网络课程的课设,因为代码是提前实现的,本博客于后期补上,又因为代码没写注释自己也看不懂了,所以,仅供参考,就当提供一种实现方式。文中提供的资料来源于网络,本文仅用于学习交流,如有侵权,可联系我进行删除。效果图:1)课程设计要求1......
  • 印刷机械设备远程监控智能运维
    方案背景近些年,印刷行业的飞速发展,印刷机械设备已经成为了现代印刷加工中不可或缺的工具,现代的印刷机械正进一步朝着远程自动化、联动化、系列化方向发展。随着市场竞争的日益激烈以及环保问题日益突出,印刷企业对于设备的监控和维护也越来越重视。如果印刷机械设备出现故障而无法正......
  • 五一假期将近,给景区视频监控方案提几点建议
    一、行业背景随着旅游业的不断发展,旅游安全问题越来越受到重视。尤其是五一假期将近,为确保游客在景区内的人身安全和财产安全,景区必须采用高效、可靠的安防视频监控系统,并进行科学规划和设计,从而实现及时发现安全事故和降低安全隐患。二、经验与建议作为垂直深耕音视频技术及视频监......
  • golang 必会之 pprof 监控系列(5) —— cpu 占用率 统计原理
    golangpprof监控系列(5)——cpu占用率统计原理大家好,我是蓝胖子。经过前面的几节对pprof的介绍,对pprof统计的原理算是掌握了七八十了,我们对memory,block,mutex,trace,goroutine,threadcreate这些维度的统计原理都进行了分析,但唯独还没有分析pprof工具是如何统计cpu使用情......
  • 运维笔记--玩转Zabbix监控系列
    立个flag,准备更新一套关于Zabbix监控系列的笔记,方便对zabbix感兴趣的同学或者运维小伙伴提供参考。先上个图:内容主要基于zabbix6.0,涉及如下:(一). Zabbix安装-CentOS7.6源码安装Zabbix6.0(二).Zabbix安装-图形界面配置(三). Zabbix安装-字体乱码问题处理(四). Zabbix展......
  • Prometheus监控zookeeper集群(1)
    因为zookeeper版本较低为3.4.x版本,所有采用zookeeper_exporter方式采集数据1.下载(zookeeper_exporter采集器)https://github.com/carlpett/zookeeper_exporter/releases/download/v1.1.0/zookeeper_exporter2.传到liunx上/opt目录下,没有目录可以自行创建3.授予权限chmod755......
  • Prometheus 长期存储方案对比
    一文读懂Prometheus长期存储主流方案Prometheus作为云原生时代崛起的标志性项目,已经成为可观测领域的事实标准。Prometheus是单实例不可扩展的,那么如果用户需要采集更多的数据并且保存更长时间该选择怎样的长期存储方案呢?2022年8月9日,在CSDN云原生系列在线峰会第......
  • WGCLOUD和 Prometheus 两款服务器运维监测软件比较选型
    最近也在想这个问题,我本身是java开发,WGCLOUD设计思想是人人皆运维,极大降低运维工作的学习门槛和学习成本,以下列几点比较下1..wgcloud对使用人员没什么要求,你可以是研发、测试、DBA、运维等,只要你能连接服务器会基础操作命令即可,它不要求你会专业的运维知识。Prometheus相对学习难度......