当前位置: 首页 > 知识库问答 >
问题:

Prometheus-查询以检测过去24小时内存在的豆荚数量

匡安宜
2023-03-14

我仍在努力学习ProMQ。我编写此查询是为了检测在给定名称空间中过去24小时内存在的kubernetes吊舱的数量。

我在这里的过程是:

  • 将度量筛选到相关的名称空间(任何名称空间)
  • 在24小时内获取该指标。
    • 在这里,每个吊舱将有许多相同创建时间的副本
    count(increase(kube_pod_created{namespace=~".*-airflow"}[1d]))
    

    任何一个熟悉普罗米修斯的人能告诉我这个逻辑是否成立吗?因为它不是一个普通的数据库/etc,所以我很难确定如何验证这个查询。它“看起来”似乎在扩展到一天之后做了正确的事情。

共有1个答案

梅逸清
2023-03-14

我建议用count\u over\u time()替换increase(),因为increase可能会错过寿命小于2倍刮取间隔的短生命舱。以下查询应返回过去24小时内看到的POD总数:

count(count_over_time(kube_pod_created{namespace=~".*airflow"}[24h]))
 类似资料:
  • 我在一个有3个节点的kubernetes集群上运行nginx。 我想知道是否有任何好处,例如,有4个豆荚和限制他们的CPU/MEM约。节点容量的1/4相对于每个节点运行一个pod,限制CPU/MEM,以便pod可以使用整个节点的资源(为了简单起见,我们将cubernet服务排除在等式之外)。 我的感觉是,豆荚越少,开销就越小,每个节点使用1个豆荚应该是性能最好的? 提前致谢

  • 正在等待,服务endpoint尚未就绪。 Minikube版本:V0.20.0 环境: minikube日志还报告了以下错误:..... 名称:kubernetes-dashboard-2039414953-czptd命名空间:kube-system节点:minikube/192.168.99.102开始时间:2017年7月14日星期五09:31:58+0530标签:k8s-app=kuberne

  • 我需要一种方法来收集在Oracle DB(Oracle数据库11g)中执行的所有查询在过去的几个小时内,无论查询有多快(这将用于计算sql覆盖率后,对我的应用程序运行测试,其中有几个点执行查询)。 我不能使用像V$SQL这样的表,因为不能保证查询会在那里保持足够长的时间。我似乎可以使用DBA_HIST_SQLTEXT,但是我没有找到过滤掉当前测试运行前执行的查询的方法。 所以我的问题是:我可以使用

  • PostgreService.yaml 已创建服务的终结点为 然后我在pod(kubectl exec-it mark-dummy-pod bash)内运行ping172.31.6.149,但不工作。(ping localhost正在工作)

  • 我是k8s的新手,我在这里遇到了一个小问题。 下面是上下文:我需要每天通过crontask调用,并等待k8s重新创建pod,然后登录到pod中的容器并运行shell命令。 因此,我查询部署并得到如下内容: 然后我编写了一个bash脚本,它将在5分钟的间隔内删除豆荚。这是容易的部分。 假设调用并等待k8s重新创建一个新的pod。这个新的pod将有一个新的名称,比如 问题是,我需要在bash脚本中捕获

  • 我要拿到过去24小时的所有资料。我已经做了一些谷歌搜索,它似乎不容易做与Dynamodb。 我在想,是否可以创建一个二级索引,使用一个公共散列键和一个时间戳字段作为排序键。因此,我可以使用条件timestamp>(datetime.now-24h)查询时间戳。请问这是一个可行的方法还是另有想法? 实际上,我只需要我的表中不超过24小时的项目。所以另一个想法是每小时清理一次表,删除所有超过24小时的