gpt4 book ai didi

azure - 普罗米修斯。 CPU 处理时间总计 %

转载 作者:行者123 更新时间:2023-12-02 07:57:59 25 4
gpt4 key购买 nike

我们开始使用 PrometheusGrafana 作为监控 Service Fabric 集群的主要工具。为了定位 Prometheus,我们使用 wmi_exporter,带有预定义参数:CPU、系统、进程、服务、内存等。我们的主要目标是开始监控 Azure Service Fabric 中每个实例的节点组上的产品服务.

例如,我们使用此 PQuery 来计算 CPU 总使用率(以百分比为单位):

100 - (avg by (hostname) (irate(wmi_cpu_time_total{scaleset="name",mode="idle"}[5m])) * 100) 和指标 +- 看起来很现实。

直到我们开始编写服务查询。

对于服务,sum by (process,hostname)(irate(wmi_process_cpu_time_total{scaleset="name", process=~"processes"}[5m])) * 100,并且指标似乎有时这并不现实,尤其是在将其与总 CPU 时间百分比进行比较后,这一点就很明显了。我发现一篇关于乘以 100 来获取 CPU 时间百分比的文章,但在本例中,我得到的指标约为 170% 或更多。也许我需要将其划分为CPU核心数?

关于查询,我使用求和流程,因为我在用户特权两种模式下为一个流程获取两个不同的指标.

任何人都可以帮助我正确计算 CPU 处理时间总指标并将其转换为 perc。 ?

谢谢,如果有任何帮助,我将不胜感激!

最佳答案

我希望这会有所帮助!结果与 Windows 性能管理器几乎相同。因此,对于正在运行的服务(任务、进程)的 CPU %:

sum by (process,hostname)(irate(wmi_process_cpu_time_total{scaleset="name", process=~"processes"}[5m])) * 100 / 2 (number of CPU cores)

首先,汇总正在运行的进程的所有指标,导出器提供同一进程 ID 的结果:用户和内核模式指标,因此需要对其进行汇总。对于主机名(实例等)也必须执行相同的操作。就我而言,我有 Azure 规模集,从 2 到 5 个实例。必须乘以 100 才能得到 %,然后除以 CPU 核心数。

干杯!

关于azure - 普罗米修斯。 CPU 处理时间总计 %,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62384757/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com