我们正在尝试使用 Bosun/OpenTSDB 数据源在 Grafana 中显示以下内容:
一个。主机按 Top-n 负载降序排列
b. 内存消耗前 10 的进程
C. CPU 使用率最高的进程
但是,我们找不到合适的指标。
如何显示这些信息?
其次,如果这些指标在 Bosun/OpenTSDB 中不可用,那么您应该如何为它们创建或定义新的指标?
limit()
中记录的、sort()
和filter()
函数例如,对于顶级 CPU 表,您可以使用如下表达式:
$avg_cpu = avg(q("avg:$ds-avg:rate{counter,,1}:os.cpu{host=ny-*}{}", "$start", ""))
sort(limit(sort($avg_cpu, "desc"), 10), "desc")
注意: sort 被调用了两次,因此该表具有按值排序的默认排序
如果你想做一个图表面板而不是一个表格,你可以使用filter()
:
$cpu = q("avg:$ds-avg:rate{counter,,1}:os.cpu{host=ny-*}{}", "$start", "")
$avg_cpu = avg(q("avg:$ds-avg:rate{counter,,1}:os.cpu{host=ny-*}{}", "$start", ""))
filter($cpu, limit(sort($avg_cpu, "desc"), 10))