一 函数介绍

gauge类型的数据  属于随机变化数值,并不像counter那样 是 持续增长

1 increase()

increase 函数 在promethes中,是⽤来 针对Counter 这种持续增 长的数值,截取其中⼀段时间的增量 。 increase(node_cpu[1m])   =》 这样 就获取了 CPU总使⽤时间 在1分钟内的增量,得到的是一个cpu在一分钟内的增量,increase和rate很相似

rate(1m) 是取⼀段时间增量的平均每秒数量

increase(1m) 则是 取⼀段时间增量的总量 

举例:


increase(node_network_receive_bytes[1m]) 取的是 1分钟内的 增量总量
rate(node_network_receive_bytes[1m]) 取的是 1分钟内的增量  除以 60秒 每秒数量

2 sum()

sum( ) 就如其字⾯意思⼀样 起到value 加合的作⽤,sum(   increase(node_cpu[1m])   ) 外⾯套⽤⼀个sum 即可把所有核数值加合,得到所有cpu在一分钟之内的增量

用法:sum(rate(node_network_receive_bytes[1m]))

3 (instance)

这个函数 可以把 sum加合到⼀起的数值 按照指定的⼀个⽅式 进⾏⼀层的拆分 instance代表的是 机器名

例如:

sum(increase(node_cpu_seconds_total{mode="idle"}[1m]))by (instance)

4 利用上面的函数查看cpu使用率

idle代表是cpu空闲时间


(1-((sum(increase(node_cpu_seconds_total{mode="idle"}[1m])) by (instance))/(sum(increase(node_cpu_seconds_total[1m])) by (instance)))) * 100 sum(increase(node_cpu{mode="idle"}[1m])) by (instance)  =》 是空闲CPU时间 1分钟的增量 sum(increase(node_cpu_seconds_total[1m])) by (instance) 是全部CPU时间 1分 钟增量

5 rate 函数的使⽤

rate(.  ) 函数 是专门搭配counter类型数据使⽤的函数 它的功能 是按照设置⼀个时间段,取counter在这个时间段中 的 平均每秒的增量

例子:

rate(node_network_receive_bytes[1m])

就可以获取到 在1分钟时间内,平均每秒钟的 增量

所以说 我们以后在使⽤任何counter数据类型的时候,永远记 得 别的先不做 先给它加上⼀个 rate() 或者 increase()

6 topk()

定义:取前⼏位的最⾼值

用法:

Gauge类型的使⽤ topk(3,count_netstat_wait_connections)

Counter类型的使⽤ topk(3,rate(node_network_receive_bytes[20m]))

7 count()

定义: 把数值符合条件的 输出数⽬进⾏加合

举例:找出当前(或者历史的)当TCP等待数⼤于200的 机器数量

count(count_netstat_wait_connections > 200)

二 prometheus命令⾏格式

1 精确匹配

命令⾏的查询 在原始输⼊的基础上 先使⽤{} 进⾏第⼀步过滤 count_netstat_wait_connections{exported_instance="log"}

exported_instance  指明 是 那台被监控服务器  “log” 是⼀台 ⽇志服务器的机器名

2 模糊匹配

count_netstat_wait_connections{exported_instance=~"web.*"}

把所有 机器名中 带有 web的 机器都显⽰出来 

.* 属于正则表达式

模糊匹配   =~

模糊不匹配  !~

3 数值过滤

标签过滤之后  就是数值的过滤 ⽐如 我们只想找出 wait_connection数量 ⼤于200的  count_netstat_wait_connections{exported_instance=~"web.*"} > 200

prometheus函数介绍的更多相关文章

  1. promql 常用函数介绍

    Metrics类型 根据不同监控指标之间的差异,Prometheus定义了4中不同的指标类型(metric type):Counter(计数器).Gauge(仪表盘).Histogram(直方图).S ...

  2. python strip()函数 介绍

    python strip()函数 介绍,需要的朋友可以参考一下   函数原型 声明:s为字符串,rm为要删除的字符序列 s.strip(rm)        删除s字符串中开头.结尾处,位于 rm删除 ...

  3. PHP ob_start() 函数介绍

    ob_start() 函数介绍: http://www.nowamagic.net/php/php_ObStart.php ob_start()作用: http://zhidao.baidu.com/ ...

  4. Python开发【第三章】:Python函数介绍

    一. 函数介绍 1.函数是什么? 在学习函数之前,一直遵循面向过程编程,即根据业务逻辑从上到下实现功能,其往往用一长段代码来实现指定功能,开发过程中最常见的操作就是粘贴复制,也就是将之前实现的代码块复 ...

  5. row_number() OVER(PARTITION BY)函数介绍

      OVER(PARTITION BY)函数介绍 开窗函数               Oracle从8.1.6开始提供分析函数,分析函数用于计算基于组的某种聚合值,它和聚合函数的不同之处是:对于每个 ...

  6. select与poll函数介绍

    select与poll函数介绍 在所有依从POSIX的平台上,select函数使我们可以执行I/O多路转接.传向select的参数告诉内核: 1)我们所关心的描述符 2)对于每个描述符我们所关心的状态 ...

  7. swift1.2语言函数和闭包函数介绍

    swift1.2语言函数和闭包函数介绍 在编程中,随着处理问题的越来越复杂,代码量飞速增加.其中,大量的代码往往相互重复或者近似重复.如果不采有效方式加以解决,代码将很难维护. swift1.2语言函 ...

  8. ZLG_GUI配置与函数介绍

    http://www.docin.com/p-825479457.html ZLG_GUI配置与函数介绍

  9. oracle下的OVER(PARTITION BY)函数介绍

    转自:http://www.cnblogs.com/lanzi/archive/2010/10/26/1861338.html OVER(PARTITION BY)函数介绍 开窗函数          ...

随机推荐

  1. ES6之数组

    数组新增方法 map(可以理解为是映射,以一定规则修改数组每一项并返回全新数组) reduce(可以理解为是汇总,一堆出来一个) filter(可以理解为过滤,筛选的意思,以一定规则拿到符合的项并返回 ...

  2. 【迷宫问题】CodeForces 1292A A NEKO's Maze Game

    题目大意 vjudge链接 共两行,从(1,n)到(2,n). 每过一个时刻会有一个位置的状态变化,从能到达这个位置变成不能到达,或从不能到达变成能到达,问在每个时刻中是否能从起点到终点. 数据范围 ...

  3. 机器分配----线性dp难题(对于我来说)

    题目: 总公司拥有高效设备M台, 准备分给下属的N个分公司.各分公司若获得这些设备,可以为国家提供一定的盈利.问:如何分配这M台设备才能使国家得到的盈利最大?求出最大盈利值.其中M <= 15, ...

  4. 【应用服务 App Service】App Service中抓取网络日志

    问题描述 众所周知,Azure App Service是一种PaaS服务,也就是说,IaaS层面的所有内容都由平台维护,所以使用App Service的我们根本无法触碰到远行程序的虚拟机(VM), 所 ...

  5. Spring笔记(4) - Spring的编程式事务和声明式事务详解

    一.背景 事务管理对于企业应用而言至关重要.它保证了用户的每一次操作都是可靠的,即便出现了异常的访问情况,也不至于破坏后台数据的完整性.就像银行的自助取款机,通常都能正常为客户服务,但是也难免遇到操作 ...

  6. 开源 Open Source

    FREE 开源不等于免费 代表自由 开源 Open Source软件和源代码提供给所有人,自由分发软件和源代码能够修改和创建衍生作品软件分类:商业   收费使用  代码不公开共享  免费用 代码不公开 ...

  7. 2020年Java基础超高频面试题汇总(1.2W字详细解析)

    1. Java语言有哪些特点 (1)简单易学.有丰富的类库 (2)面向对象(Java最重要的特性,让程序耦合度更低,内聚性更高) (3)与平台无关性(JVM是Java跨平台使用的根本) (4)可靠安全 ...

  8. Vue富文本编辑器(图片拖拽缩放)

    富文本编辑器(图片拖拽缩放) 需求: 根据业务要求,需要能够上传图片,且上传的图片能在移动端中占满屏幕宽度,故需要能等比缩放上传的图片,还需要能拖拽.缩放.改变图片大小.尝试多个第三方富文本编辑器,很 ...

  9. ERROR [RMI TCP Connection(3)-127.0.0.1] - init datasource error

    运行报错 ERROR [RMI TCP Connection(3)-127.0.0.1] - init datasource error, url: jdbc:mysql://localhost:33 ...

  10. vue 路由知识点(一级路由与二级路由嵌套)

    本人小白一个,如果问题,麻烦大神指点, 一级路由: path:'/' 默认为显示; 二级路由: path: '',默认显示为index组件,因为二级路有没有写index组件,所以使用redirect: ...