如何 aggregate/Sum 多个 CPU 核心在 grafana 中获得一个 CPU 指标?
How to aggregate/Sum multiple CPU cores to get one CPU metric in grafana?
有没有办法聚合 metrics/metric-names?例如,在四核系统上,您有以下指标名称:
cpu.0.system
cpu.1.system
cpu.2.system
cpu.3.system
我想 SUM(cpu.*.system) 得到汇总的 cpu.system.total.
有没有办法使用当前的 Grafana-graphite 查询编辑器来完成此操作?
请指教
试试这个
alias(sumSeries(cpu.*.system),'Total CPU')
我得到了另一种解决方案,如下所述:
已编辑 vi /opt/collectd/etc/collectd.conf
文件。
取消注释 LoadPlugin 聚合。
LoadPlugin aggregation
<Plugin aggregation>
<Aggregation>
#Host "unspecified"
Plugin "cpu"
#PluginInstance "unspecified"
Type "cpu"
#TypeInstance "unspecified"
GroupBy "Host"
GroupBy "TypeInstance"
# CalculateNum false
# CalculateSum false
CalculateAverage true
# CalculateMinimum false
# CalculateMaximum false
# CalculateStddev false
</Aggregation>
</Plugin>
并重新启动收集的服务。
这是一个仅使用 build-in Grafana 函数的解决方案
1-sum(rate(node_cpu_seconds_total{mode="idle"}[20s]))/8
Grafana 将计算过去 20 秒的平均 CPU 使用率。
重要
更改最后一个数字(上例中的 "/8"),以匹配受监控实例上的核心数,并将 "20s" 与任何时间间隔相匹配你愿意。
然后将图表的显示单位更改为百分比 0.0-1.0
有没有办法聚合 metrics/metric-names?例如,在四核系统上,您有以下指标名称:
cpu.0.system cpu.1.system cpu.2.system cpu.3.system
我想 SUM(cpu.*.system) 得到汇总的 cpu.system.total.
有没有办法使用当前的 Grafana-graphite 查询编辑器来完成此操作?
请指教
试试这个
alias(sumSeries(cpu.*.system),'Total CPU')
我得到了另一种解决方案,如下所述:
已编辑 vi /opt/collectd/etc/collectd.conf
文件。
取消注释 LoadPlugin 聚合。
LoadPlugin aggregation
<Plugin aggregation>
<Aggregation>
#Host "unspecified"
Plugin "cpu"
#PluginInstance "unspecified"
Type "cpu"
#TypeInstance "unspecified"
GroupBy "Host"
GroupBy "TypeInstance"
# CalculateNum false
# CalculateSum false
CalculateAverage true
# CalculateMinimum false
# CalculateMaximum false
# CalculateStddev false
</Aggregation>
</Plugin>
并重新启动收集的服务。
这是一个仅使用 build-in Grafana 函数的解决方案
1-sum(rate(node_cpu_seconds_total{mode="idle"}[20s]))/8
Grafana 将计算过去 20 秒的平均 CPU 使用率。
重要
更改最后一个数字(上例中的 "/8"),以匹配受监控实例上的核心数,并将 "20s" 与任何时间间隔相匹配你愿意。
然后将图表的显示单位更改为百分比 0.0-1.0