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

普罗米修斯:找到最大RPS

曾皓
2023-03-14

假设我在普罗米修斯中有两个指标,两个计数器:

好的:

nginx_ingress_controller_requests{prometheus_from="$cluster", ingress="brand-safety-phoenix-service", status="200"}

失败:

nginx_ingress_controller_requests{prometheus_from="$cluster", ingress="brand-safety-phoenix-service", status!="200"}

总计:

nginx_ingress_controller_requests{prometheus_from="$cluster", ingress="brand-safety-phoenix-service"}

我的问题是如何找到在promQL查询中发生的RPSfailures

我期待以下回应:

400

这意味着,如果 pod 接收

sum((sum(rate(nginx_ingress_controller_requests{prometheus_from="$cluster", ingress="brand-safety-phoenix-service"}[$__rate_interval])) without (status))
  and
  (sum(rate(nginx_ingress_controller_requests{prometheus_from="$cluster", ingress="brand-safety-phoenix-service", status !="200"}[$__rate_interval])) without (status) > 0))

共有1个答案

陈野
2023-03-14

您需要以下查询:

rps_total and (rps_failure > 0)

二进制运算用于将右侧时间序列与具有相同标签集的左侧序列进行匹配。有关匹配规则的详细信息,请参阅这些文档。

给定上述匹配规则,我们用实际时间序列替换< code>rps_total和< code>rps_failure。

>

  • rps_total被替换为sum(nginx_ingress_controller_requests{prometheus_from=“$cluster”,ingress=“品牌安全凤凰服务”}),无(状态)。需要sum(…)无(状态),以对剩余标签分组的所有状态标签的度量求和。

    rps_failure替换为 sum(nginx_ingress_controller_requests{prometheus_from=“$cluster”,入口=“品牌安全凤凰服务”,状态!=“200”})不带(状态)

    然后最终的PromQL查询将如下所示:

    (
      sum(nginx_ingress_controller_requests{prometheus_from="$cluster", ingress="brand-safety-phoenix-service"}) without (status)
      and
      (sum(nginx_ingress_controller_requests{prometheus_from="$cluster", ingress="brand-safety-phoenix-service", status!="200"}) without (status) > 0)
    )
    

  •  类似资料:
    • 我将我的GKE API服务器升级到1.6,并正在将节点升级到1.6,但遇到了一个障碍... 我有一个prometheus服务器(版本1.5.2),运行在一个由Kubernetes部署管理的pod中,其中两个节点运行版本1.5.4Kubelet,一个新节点运行版本1.6。 但普罗米修斯仍然得到401。 更新:就像乔丹所说的kubernetes认证问题。在这里看到新的、更集中的问题;https://s

    • 我要监控的应用程序为健康检查提供了一个apiendpoint,该endpoint使用json中的指标进行响应。例如: 我已经设置了Prometheus blackbox\u exporter,以监视此endpoint是否返回200 Ok,但理想情况下,我也希望获得这些指标。我知道instrumentation直接从应用程序导出这些数据。但是,由于应用程序已经在导出json对象中我想要的内容,我更希

    • 我有一个启用了监视和日志记录的GKE集群(1.15)。到目前为止,我们一直使用metrics-server对StackDriver进行度量监控。对于其他自定义度量标准,我们使用了自定义度量标准适配器,该适配器使用Prometheus-to-SD将度量标准刮取并导出到stackdriver。 我想开始看看prometheus是否能给我们提供其他功能,比如HPA的聚合度量。 在GCP marketpl

    • null 使用默认配置和轻微的定制。 我可以访问prometheus、grafana和alertmanager,查询度量标准并查看精美的图表。 但是prometheus-adapter在启动时不断抱怨它不能访问/发现度量: 在我的设置中,对于prometheus-adapter的正确值是什么?

    • 关于整合齐普金和普罗米修斯的可能性的小问题。 目前,我们已经有了一个完全可用的Zipkin实例,以及它的web UI。Zipkin超级酷,一切都很好。 我们能够让所有微服务向Zipkin发送跟踪信息,并让Zipkin汇总这些信息。 我们还可以在UI中搜索痕迹等等,超级酷。 另一方面,我们也有一个非常成熟的经过实战检验的Prometheus Grafana,其中已经包含了容器级指标、应用程序级指标和

    • 摘要 由于导入的Grafana仪表板无法工作,我正在尝试找出如何在Prometheus查询中正确使用或运算符。