prometheus函数介绍
一 函数介绍
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函数介绍的更多相关文章
- promql 常用函数介绍
Metrics类型 根据不同监控指标之间的差异,Prometheus定义了4中不同的指标类型(metric type):Counter(计数器).Gauge(仪表盘).Histogram(直方图).S ...
- python strip()函数 介绍
python strip()函数 介绍,需要的朋友可以参考一下 函数原型 声明:s为字符串,rm为要删除的字符序列 s.strip(rm) 删除s字符串中开头.结尾处,位于 rm删除 ...
- PHP ob_start() 函数介绍
ob_start() 函数介绍: http://www.nowamagic.net/php/php_ObStart.php ob_start()作用: http://zhidao.baidu.com/ ...
- Python开发【第三章】:Python函数介绍
一. 函数介绍 1.函数是什么? 在学习函数之前,一直遵循面向过程编程,即根据业务逻辑从上到下实现功能,其往往用一长段代码来实现指定功能,开发过程中最常见的操作就是粘贴复制,也就是将之前实现的代码块复 ...
- row_number() OVER(PARTITION BY)函数介绍
OVER(PARTITION BY)函数介绍 开窗函数 Oracle从8.1.6开始提供分析函数,分析函数用于计算基于组的某种聚合值,它和聚合函数的不同之处是:对于每个 ...
- select与poll函数介绍
select与poll函数介绍 在所有依从POSIX的平台上,select函数使我们可以执行I/O多路转接.传向select的参数告诉内核: 1)我们所关心的描述符 2)对于每个描述符我们所关心的状态 ...
- swift1.2语言函数和闭包函数介绍
swift1.2语言函数和闭包函数介绍 在编程中,随着处理问题的越来越复杂,代码量飞速增加.其中,大量的代码往往相互重复或者近似重复.如果不采有效方式加以解决,代码将很难维护. swift1.2语言函 ...
- ZLG_GUI配置与函数介绍
http://www.docin.com/p-825479457.html ZLG_GUI配置与函数介绍
- oracle下的OVER(PARTITION BY)函数介绍
转自:http://www.cnblogs.com/lanzi/archive/2010/10/26/1861338.html OVER(PARTITION BY)函数介绍 开窗函数 ...
随机推荐
- 多测师讲解python练习题_100以内奇数,偶数的和_高级讲师肖sir
(1)通过while 循环来求出1-100之和'''(2)通过while 循环来求出1-100奇数之和'''(3)通过while 循环来求出1-100偶数之和''' 奇数和 sum1=0for i i ...
- Springboot+Redis(发布订阅模式)跨多服务器实战
一:redis中发布订阅功能(http://www.redis.cn/commands.html#pubsub) PSUBSCRIBE pattern [pattern -]:订阅一个或者多个符合pa ...
- day43 Pyhton 并发编程06
一.内容回顾 线程 锁 为什么有了GIL之后还需要锁 多个线程同时操作全局变量还需要锁 当出现'非原子性操作',例如+= -= *= /= l.append(l) 原子性操作 a += 1 a= a ...
- Termux基础教程(一):技能部署
Termux基础教程 by CUCI Termux 是一个 Android 下一个高级的终端模拟器,开源且不需要 root,支持 apt 管理软件包,十分方便安装软件包,完美支持 Python. PH ...
- 什么是C和C++标准——小白必看
本文简要介绍编写C/C ++应用程序的领域,标准库的作用以及它是如何在各种操作系统中实现的. 我已经接触C++一段时间了,一开始就让我感到疑惑的是其内部结构:我所使用的内核函数和类从何而来? 谁发明了 ...
- codevs1298, hdu1392 (凸包模板)
题意: 求凸包周长. 总结: 测试模板. 代码: #include <iostream> #include <cstdio> #include <cstring> ...
- centos搭建离线epel源
准备 有一个联网的机器,并已经配置好epel源 安装reposync和createrepo命令 yum install yum-utils #reposync在这里 yum install creat ...
- 栈和堆 - JS
原始值 - Stack (栈) Number String Boolean undefined null 引用值 - Heap (堆) array object function ...data Re ...
- java之集合容器(Collection,Map)
首先我们要了解什么是集合? 正所谓容器,比如说杯子是装水的容器,衣柜是装衣服的容器,那么集合就是装数据的容器. 集合有什么特点呢? 1.集合长度是可变的 2.集合用来存储对象 集合和数组有什么区别呢? ...
- 【总结】mysql调优
一.事务 1.事务的特性 (1)原子性(Atomicity),可以理解为一个事务内的所有操作要么都执行,要么都不执行. (2)一致性(Consistency),可以理解为数据是满足完整性约束的,也就是 ...