首页 > 数据库 >2 分钟,了解 4 个极为有用的 MetricsQL 函数

2 分钟,了解 4 个极为有用的 MetricsQL 函数

时间:2024-02-19 12:13:36浏览次数:30  
标签:count gt 函数 over 有用 time MetricsQL 告警

夜莺社区的朋友如果问时序库的选型,我一般都会推荐 VictoriaMetrics,除了其性能、稳定性、集群扩展能力之外,VictoriaMetrics 还扩展了 PromQL,提供了 MetricsQL,即增强了 PromQL 的能力。比如下面介绍的场景,就很适合用 MetricsQL 来解决。

需求

某个指标( 假设指标名字是 interface_status )每分钟上报一次,如果 5 分钟内有 3 次大于 x 的值,就报警。

解法

如果使用 PromQL,就比较难写了,而 MetricsQL 就很简单,如下:

count_gt_over_time(interface_status[5m], x) >= 3

看到这个写法,基本能直观理解其含义了 count_gt_over_time(series_selector[d], gt) 函数有两个参数,一个是 range-vector,一个是标量 gt,表示在 range-vector 中大于 gt 的个数,如果大于等于 3,就报警。除了 count_gt_over_time 函数之外,还有 count_le_over_time、count_ne_over_time、count_eq_over_time 道理相同。

思考

假设我们知道原始数据上报频率,如果使用 promql 来实现上述需求,应该怎么写呢?欢迎评论区留言分享 :)

另外

最近我们开放了 FlashDuty 的告警引擎能力,可以直接对接各类时序库、数据库、ClickHouse、ElasticSearch、Loki 等日志库,对数据做异常判断,直接生成告警事件。换句话说,不再需要夜莺、Alertmanager、Elastalert 等告警引擎,Flashduty 就可一肩挑。在线体验地址:https://console.flashcat.cloud/ 菜单入口:「告警管理」。截图如下:

20240130090320

任何问题均可联系我微信:picobyte

标签:count,gt,函数,over,有用,time,MetricsQL,告警
From: https://www.cnblogs.com/ulricqin/p/18020789

相关文章

  • nativeUI页面table列表显示,render渲染函数
    {key:'type',title:$t('cmdType'),width:150,align:'center',render(t){switch(t.type){case2:returnh('span',{......
  • python函数传参
    python函数传参参考:python函数参数传递(params,*params,**params)位置参数常见的函数参数:defadd_both(x,y):returnx+y默认参数defenroll(name,gender,age=6,city='Beijing'):print('name:',name)print('gender:',gender)print(&......
  • 2024-02-18-物联网C语言(7-字符串处理函数)
    7.字符串7.1获取字符串的长度函数-strlen头文件:#include<string.h>函数定义:size_tstrlen(constchar*s)参数:s-指定的字符串返回值:当前字符串的长度#include<stdio.h>#include<string.h>intmain(intargc,charconst*argv[]){//使用strlen获取字符......
  • 请编写函数fun,它的功能是:求出1到100之内能被7或者11整除, 但不能同时被7和11整除的所有
    /2.请编写函数fun,它的功能是:求出1到100之内能被7或者11整除,但不能同时被7和11整除的所有整数,并将他们放在a所指的数组中,通过n返回这些数的个数/#include<stdio.h>#include<string.h>intfun(int*buf){inti=1,j=0;for(i=1;i<100;i++){if(i%7==......
  • 1.m个人的成绩存放在score数组中,请编写函数fun, 它的功能是:将低于平均分的人数作为函
    /1.m个人的成绩存放在score数组中,请编写函数fun,它的功能是:将低于平均分的人数作为函数值返回,将低于平均分的分数放在below所指1定的数组中。/#include<stdio.h>#include<string.h>intfun(int*buf,int*buff,intnum){inti=0,j=0,sum=0;for(i=......
  • [python] 内置函数: zip()
    zip()作用将复数个可循环类型(iterables)中的元素组装为一组tuple;组装规则是根据各自所在的位置决定;当最短的可循环类型内已经没有元素的时候,组装终止传入参数以及返回类型参数是可循环的数据类型,例如数组,元组,字符串等返回类型是搭载复数元组的某种可循环类型......
  • VB Open 函数详解 打开、关闭、读、写文件
    (一)打开和关闭文件    1、顺序文件    打开顺序文件,我们可以使用Open语句。它的格式如下:OpenpathnameFor[Input|Output|Append]As[#]filenumber[Len=buffersize]     说明:    (1)参数pathname表示要打开的文件名,文件名可以包含有驱动器和目录 ......
  • 【Flink】复函数的使用,时间服务和定时器,值、列表、字典状态变量
    【Flink】复函数的使用,时间服务和定时器,值、列表、字典状态变量文章目录一FlinkDataStreamAPI1复函数2自定义输出到下游设备二处理函数1KeyedProcessFunction的使用(1)时间服务和定时器2状态变量(1)值状态变量a需求一b需求二(2)列表状态变量(3)字典状态变量一Fl......
  • 2024-02-17-物联网C语言(3-函数)
    3.函数3.1函数的概念函数是c语言的功能单位,实现一个功能可以封装一个函数实现。定义一个函数的时候需要一切以功能为目的,根据功能去定义函数的参数和返回值。3.2函数的分类3.2.1从定义角度分类库函数(c库实现)自定义函数(程序员自定义函数)系统调用(操作系统实现的函数)3.......
  • 窗口函数
    窗口函数语法:<窗口函数>over(partitionby分组字段orderby排序字段rowsbetween开始and结束)partitionby字段对指定字段进行分组,后续以组为单位,把每个分组单独作为一个窗口进行统计分析操作。orderby字段orderby与partitionby连用的时候,可以对各个分......