• 原创-PromQL语法


    匹配标签值时可以是等于,也可以使用正则表达式。总共有下面几种匹配操作符:

    1. =:完全相等
    2. !=: 不相等
    3. =~: 正则表达式匹配
    4. !~: 正则表达式不匹配

    Prometheus的4种数据类型如下。·瞬时向量(Instant vector):一组时间序列,每个时间序列包含单个样本,它们共享相同的时间戳。也就是说,表达式的返回值中只会包含该时间序列中最新的一个样本值。·区间向量(Range vector):一组时间序列,每个时间序列包含一段时间范围内的样本数据。·标量(Scalar):一个浮点型的数据值,没有时序。可以写成[-](digits)[.(digits)]的形式,比如-3.14。需要注意的是,使用表达式count(http_requests_total)返回的数据类型依然是瞬时向量,用户可以通过内置函数scalar()将单个瞬时向量转换为标量。·字符串(String):一个简单的字符串值。字符串可以用单引号('')、双引号("")或反引号(``)来指定。因为Prometheus是基于Go语言编写的,所以它与Go语言有着类似的转义规则[1],比如在单引号('')或双引号("")中,可以使用反斜杠()来表示转义序列,后面可以接a、b、f、n、r、t、v或(分别代表响铃、退格、换页、换行、回车、水平制表、反斜杠),特殊字符可以使用八进制( nn)或者十六进制(xnn、unnnn和Unnnnnnnn)。但是与Go语言不同的是,Prometheus中的反引号(``)并不会对换行符进行转义。

    指标的格式:

     其中,Metric Name参数又可以表达成 {_name_="http_requests_total"}

    常用PromQL语句:

    rate(xxxxx{idc="shanghai",instance=~"$instance",isp="BGP",item="http_code_200",job="xxxx"}[10m]) 收集xxxxx指标内匹配中括号参数的10分钟内的数据,一秒一次。

  • 相关阅读:
    头文件#ifndef #define #endif使用
    Django框架【form组件】
    数据库【mysql】之pymysql
    数据库【mysql篇】典型的一些练习题目
    Python开发【socket篇】解决粘包
    Python开发【内置模块篇】os模块
    Python开发【内置模块篇】日志模块
    Python开发【内置模块篇】configparser
    Python开发【内置模块篇】collections
    Python开发【内置模块篇】datetime
  • 原文地址:https://www.cnblogs.com/normanlin/p/14046488.html
Copyright © 2020-2023  润新知