
prometheus强制使用UTC世界统一时间,比实际北京时间早8个小时,可以在grafana修改时间为浏览器当前时间。
生产环境在用prometheus修改配置后如何在不影响正常使用的前提下更新配置,需要启动带如下参数:
热加载语法:
登录grafana服务器,执行如下语句:
prometheus两个及以上指标参与运算时,两个指标具有不同的标签值,无法匹配,导致两个正常的指标组合运算后返回no data。
原因是: 当 prometheus 对表达式求值时,该 *** 作隐式应用于共享相同标签集的指标。尽管指定了指标名称和大多数标签,但 Prometheus 一直在寻找具有相同标签集的指标。
举例: 一个指标具有标签 metric=“Used”,另一个指标具有标签 metric=“Total”可能是其中一个指标具有一些额外的标签,即会导致运算结果无返回值。
解决方案: 使用ignore(或on)来减少考虑的标签集。
真实解决案例:
prometheus运算要求两个指标必须拥有相同的标签集,这两个指标的标签集存在差异。有两种可以实现计算的方法:
1、使用ignoring(node),忽略差异的标签,如:
2、比较取巧的方法,通过max,min等计算符将结果转换为数值进行计算,而非prometheus数据类型,如:
发现是告警语句问题,具体逻辑摸索中,征求大家原理分析下:
原告警语句:
调整后正常:
官方文档
Prometheus 从被监控目标设备通过检索 metrics >
在 prometheus 中存在各种时间序列数据,那么我们如何根据时间序列查询想要的数据呢?prometheus为我们提供了强大的 PromQL ,借助 PromQL 我们可以查询到自己想要的数据。
注意:
1、如果我们要绘制图形,那么必须返回 Instant vector 类型的数据。
字符串可以使用 ''(单引号),""(双引号),``(反引号)来表示。在单引号和双引号中,反斜杠成为了转义字符,后面可以跟着a,b, f, n, r, t, v或者\。
eg:
浮点数可以写成以下这种格式
eg:
即时向量选择器允许在给定的时间戳(即时)上选择一组时间序列和每个样本的单个样本值。
1、只给定指标名称,或者在指标名称上指定空匹配器,这将返回给定指标下的所有时间序列的即时样本数据。
eg:
2、只给定匹配器,返回符合该匹配器的所有时间序列的即时样本。
eg:
3、同时指定指标名称和匹配器,返回符合给定指标名称和匹配器的即时样本。
eg:
注意:
1、 指标名称 和 匹配器 必须要选择一个。
匹配器主要是用于标签过滤,目前支持如下4种格式。
eg:
1、查询出指标名称 up 中标签 job 等于 prometheus 的时间序列数据
2、查询出指标名称 up 中标签 job 不等于 prometheus 的时间序列数据
3、查询出指标名称 up 中标签 job 以 pro 开头的的时间序列数据
4、查询出指标名称 up 中标签 job 不以 pro 开头的的时间序列数据
5、查询出指标名称 up 中不存在标签 env 的时间序列数据
5、查询指标名称是以 prometheus 开头的所有的时间序列数据
注意:
区间向量选择器和即时向量选择器大致类似,唯一的不同在于表达式之后需要跟一个 [] 表达需要返回那个区间范围的时间序列数据。
ms(毫秒)、s(秒)、m(分钟)、h(小时)、d(天)、w(周)、y(年)
d 表示一天总是24小时
w 表示一周总是7天
y 表示一年总是365天
默认情况下,即时向量和区间向量选择器都是以当前时间为准,但是偏移量修改器 offset 可以修改该基准。偏移量选择器是紧跟在表达式之后使用 offset 来指定的。
eg:
1、表示获取指标名称prometheus_>
以上就是关于Prometheus采集数据缺少全部的内容,包括:Prometheus采集数据缺少、(4) -- Jaeger, Prometheus, Kiali, GRAFANA使用指引、Prometheus的四大指标类型等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)