【发布时间】:2015-02-18 18:17:19
【问题描述】:
我有一个 AWS 服务器集群,我使用 Graphite 跟踪统计数据。集群中的服务器会随着新版本软件的部署或集群大小的增长或缩小而变化。
例如:
昨天添加的指标
服务器.1.cpu
服务器.2.cpu今天添加的指标
服务器.2.cpu
服务器.3.cpu
当我通过 Graphite 查看我的数据时,我只希望它显示在我查询的时间段内有数据的服务器的指标。但是,因为我不知道在该时间段内有哪些服务器可用,所以我在查询中指定了 *,这会导致集群中存在的所有服务器都包含在该系列中。
最近 15 分钟的查询:
服务器。*.cpu
结果:
服务器.1.cpu
服务器.2.cpu
服务器.3.cpu
有没有办法过滤掉没有系列数据的服务器?因此,在上面的示例中,我不包含来自servers.1.cpu 的指标。但是,如果我的查询时间段是昨天,我会得到servers.1.cpu,而不是servers.3.cpu。
【问题讨论】:
-
这里有一个相关的问题。当服务器一直在变化时,您如何有效地存储指标。如果您在指标名称中使用服务器的 IP 地址,那么随着服务器轮换,您将拥有大量稀疏指标。这似乎是对磁盘空间的极其低效的使用。
标签: graphite