1.函数

rate()

rate函数,rate用来计算两个 间隔时间内发生的变化率(一段时间内平均每秒的增量)。

专门用来搭配Counters类型的数据rate(指标名{筛选条件}[时间间隔])

比如 查看1分钟内非idle的cpu使用率

rate(node_cpu_seconds_total{mode!="idle"}[1m])

irate()

rate与irate的区别
irate和rate都会用于计算某个指标在一定时间间隔内的变化速率。但是它们的计算方法有所不同:irate取的是在指定时间范围内的最近两个数据点来算速率,而rate会取指定时间范围内所有数据点,算出一组速率,然后取平均值作为结果。

所以官网文档说:irate适合快速变化的计数器(counter),而rate适合缓慢变化的计数器(counter)

根据以上算法我们也可以理解,对于快速变化的计数器,如果使用rate,因为使用了平均值,很容易把峰值削平。除非我们把时间间隔设置得足够小,就能够减弱这种效应。

  • 相同函数,截取不同时间的图形分析:
rate(node_network_receive_bytes_total{device="ens32",instance="k8s-node1"}[1m])

1分钟内 增加了 1000bytes (假设)
5分钟内 增加了 5000bytes (假设)

会把1000bytes除以 1m*60秒,=~16bytes/s 就是这样计算出在这1分钟内,平均每秒钟增加 16bytes

把5分钟内的增量 除以 5m*60s ,5分钟的增量 假如是 5000 , 那么除以300 以后 也还是约等于 =~ 16bytes/s

以上两种时间段的取法,都是假设成⼀种平均的取法,这是一种假设的理想状态,事实上生产环境 网络数据接收量 可不是这么平均的。有可能在 第一分钟 增加了 1000, 到 第二分钟 就变成增加了2500….

所以 rate(1m) 这样的取值方法比起 rate(5m) ,因为它取的时间段短,所以 任何某⼀瞬间的凸起或者降低在成图的时候会体现的更细致 更敏感而rate(5m)把整个5分钟内的都⼀起平均了,那么当发生瞬时凸起的时候,会显得图平缓了⼀些 (因为 取的时间段长 把波峰波谷都给平均消下去了)

increase()

increase 函数 在promethes中,是用来针对Counter 这种持续增长的数值,截取其中⼀段时间的 增量(一段时间内的总增量)

increase(node_cpu_seconds_total[1m]) =》 这样 就获取了 CPU总使用时间在1分钟内的增量

sum( )

比如上面得到各个指标的cpu使用率,如果我想计算总的cpu使用率怎么办?

sum( ) 就如其字⾯意思⼀样 起到value 加合的作用 sum( increase(node_cpu_seconds_total[1m]) ) 外⾯套⽤⼀个sum 即可把所有核数值加合

问题1:所有机器的CPU 也全都加到⼀起了,变成 服务器集群 总CPU平均值了?

by()

by (instance) 这个函数 可以把 sum加合到⼀起的数值 按照指定的⼀个方式进行一层的 拆分

instance 代表的是 机器名

意思就是说 把sum函数中 服务器加合的这个糗事 再给它强行拆分出来

sum(increase(node_cpu_seconds_total{mode=“idle”}[1m])) by (instance)
sum() by (cluster_name) 可以帮我们实现集群加合并分三条曲线输出了,顺带一提的是 (cluster_name) 这个标签,默认node_exporter是没有办法提供的,node_exporter只能按照不同的机器名去划分。如果希望支持cluster_name 我们需要自行定义标签。

topk()

topk() 函数的定义是:取前面x位的最高值,最简单理解就是数学的top,当我们有很多服务器我们想要获取某个key的数据排在前3位的服务器。

  • Gauge类型使用方式:
    topk(3,key)

  • Counter类型使用方式
    topk(3,rate(key[1m]))

注意:此种函数获得数据并不是很适用图形化展示,实际使用的时候 ⼀般用topk()函数 进行瞬时报警而不是为了观察曲线图

count()

定义: 把数值符合条件的 输出数目进行加合
例如:找出当前(或者历史的)当数值数大于2000的机器数量

prometheus常用语法相关推荐

  1. Markdown通用的常用语法说明

    前言 Markdown 是一种轻量级的 标记语言,语法简洁明了.学习容易,还具有其他很多优点,目前被越来越多的人用来写作使用. Markdown具有一系列衍生版本,用于扩展Markdown的功能(如表 ...

  2. jsp 4种常用语法3个编译指令7个动作指令

    4种常用语法: 注释:<%--注释--%> 声明:<%!声明部分%> 输出:<%=%> 脚本:可以包含任何java可执行代码.例 <% for(int i=0 ...

  3. [转]C++/CLI与C#常用语法对比

    [转]C++/CLI与C#常用语法对比 Kenny Kerr 一篇名为C++: The Most Powerful Language for .NET Framework Programming文章中 ...

  4. 每天学一点儿shell:Shell的常用语法规则

    文章目录 Shell 参数传递 Shell 数组 Shell 基本运算符 算数运算符 关系运算符 布尔运算符 逻辑运算符 字符串运算符(重点) 文件测试运算符 Shell 常用语法 Shell 函数 ...

  5. 【shell】常用语法 -b file -c file -f file-d file -x file

    [shell]常用语法 -b file  -c file  -f file-d file  -x file      一.test条件判断 1,test文件测试: -b file     若文件存在且 ...

  6. Go Time常用语法

    Go Time常用语法 目录 获取当前时间戳和string类型的格式化时间 构造指定时间 时间戳和格式化时间相互转换 获取当前几月,几号,星期几 待续,用到什么补充什么 1. 获取当前时间戳和stri ...

  7. Mysql常用语法总结

    Mysql常用语法总结如下: #连接mysql数据库(Dos下面) mysql -u root -p 123 #创建数据库 create database myschool; #创建表 drop ta ...

  8. MySQL常用语法记录

    0.说明 记录MySQL使用到的常用语法. 1.MySQLDISTINCT唯一 2.MySQLLIMIT限制 3.MySQL ORDER排序升序 4.MySQL DESC降序 5.MySQL WHER ...

  9. Perl常用语法记录

    Perl常用语法记录 ##包的切换和调用其它包的方式 #package A; #my $a=10;#package B; #print $A::a; #print $a;##local局部标识符的使用 ...

最新文章

  1. WWW2020推荐系统论文合集(已分类整理,并提供下载)
  2. pi数据库系统中国服务器,基于PI数据库的服务器实时监控系统研究与开发
  3. C++ map嵌套使用 链接
  4. UA池和IP代理池使用
  5. udp 使用connect优点_nodejs源码分析第十九章 -- udp模块
  6. 20150324 作业1(升级喽)
  7. java file 方法_JAVA中File的常用方法
  8. centos7.2 开发 部署 .net core
  9. std::string.assign()的用法-爱情滕-搜狐博客
  10. mujoco安装教程
  11. 初学者安装mysql5.7_CentOS7入门_安装并配置mysql5.7.18
  12. 一个SDK打破实时语音社交的“不可能三角”
  13. 重新安装OFFICE2010失败
  14. 外卖优惠券返利分销系统外卖返利系统公众号小程序源码saas系统
  15. 盘点八大虚拟桌面基础架构(VDI)协议
  16. 西瓜书笔记5:神经网络
  17. 计算机网络状态不存在,IP地址是什么?我地电脑上不去网,有时显示IP地址不存在是怎么了...
  18. 2021最新Android知识体系总结,实战篇
  19. 64编码格式数据转 json数据 php,PHP的json数据编译和解译,字符编码无关。
  20. lisp调用vlx模块_CAD二次开发,lisp程序生成应用程序VLX,如何在CAD里面创建一个快捷图标,点击快捷图标就可以调用程序?...

热门文章

  1. [HDU4635] Strongly connected
  2. python创建和删除文件
  3. WebView点击图片看大图效果
  4. 在Ubuntu下用桌面图形界面挂载分区
  5. VS2015快捷键使用与常见问题
  6. Browser-Bookmark-Codeing
  7. 7-95 倒数第N个字符串 (15 分)
  8. 3011-基于二叉树的表达式求值(C++,附详细思路)
  9. cs go linux游戏吧,玩家分享:让CSGO画面变成舒服的暖色调
  10. 天地图怎么看历史图像_解密:看猪八戒是怎么由一头猪变成天蓬元帅的