Kubernetes Prometheus-用于检测过去24小时内存在的豆荚数的查询
我仍在努力学习ProMQ。我编写此查询是为了检测在给定名称空间中过去24小时内存在的kubernetes吊舱的数量 我在这里的过程是:Kubernetes Prometheus-用于检测过去24小时内存在的豆荚数的查询,kubernetes,prometheus,Kubernetes,Prometheus,我仍在努力学习ProMQ。我编写此查询是为了检测在给定名称空间中过去24小时内存在的kubernetes吊舱的数量 我在这里的过程是: 将度量筛选到相关的名称空间(任何名称空间) 在24小时内获取该指标。 在这里,每个吊舱将有许多相同创建时间的副本 使用increase()将每个吊舱的范围向量恢复为瞬时向量。该值将始终为0,因为创建时间不会增加 现在我们每个pod有1个值,使用count()查看在该时间范围内存在多少个值 任何一个熟悉普罗米修斯的人能告诉我这个逻辑是否成立吗?因为它不是
- 将度量筛选到相关的名称空间(任何名称空间)
- 在24小时内获取该指标。
- 在这里,每个吊舱将有许多相同创建时间的副本
- 使用
将每个吊舱的范围向量恢复为瞬时向量。该值将始终为0,因为创建时间不会增加increase()
- 现在我们每个pod有1个值,使用
查看在该时间范围内存在多少个值count()
任何一个熟悉普罗米修斯的人能告诉我这个逻辑是否成立吗?因为它不是一个普通的数据库/etc,所以我很难确定如何验证这个查询。“看起来”如果扩展到一天,它可能会做正确的事情。我建议用
count\u over\u time()
代替rease()
,因为rease
可能会错过寿命小于2倍刮擦间隔的短命豆荚。以下查询应返回过去24小时内看到的POD总数:
count(count_over_time(kube_pod_created{namespace=~".*airflow"}[24h]))
这回答了你的问题吗?谢谢,这个建议在这里很有意义,因为气流在kubernetes上安排了数千个通常非常短暂的任务:)。问题。。。如果一个吊舱生活在两次刮舱间隔之间,这个指标能捕捉到它吗?或者,查找机制是否只捕获在刮擦时间存活的豆荚?我不确定它是否有任何回溯功能。如果吊舱寿命小于刮擦间隔,那么普罗米修斯可能不会注意到它。
count(count_over_time(kube_pod_created{namespace=~".*airflow"}[24h]))