0

我有很多服务器想用 sensu + InfluxDB 监控。我已经使用 Sensu 在 InfluxDB 中创建了检查和指标集合。

我安装了 Chronograf 来对数据库进行查询,它的工作就像一个魅力。

但...

对于我所有的服务器,我想要相同的图表:

  • CPU使用率
  • CPU负载
  • 记忆
  • 磁盘
  • ETC...

即使重新创建它们非常简单,我也想自动完成。我想要所有的图表,能够选择我想要观看的服务器。我在数据库中的所有数据都是这样的:

server1.memory.total
server1.load_avg.five
server2.memory.total
server2.load_avg.five
[...]

例如,我使用的查询是这样的:

SELECT "value" FROM "metrics".."server1.load_avg.five" WHERE time > now() - 1h

我只想找到为我想查看的图表选择正确服务器的方法。

我可以用 grafana 或 chronograf 做到这一点吗?也许我必须开发自己的仪表板,最好的方法是什么?

4

1 回答 1

0

Chronograf 有一个未记录的 API,可以实现您正在寻找的功能,但它仍处于早期阶段,尚未经过广泛测试。

目前,我们对它们的记录最少。可能需要一些玩弄才能弄清楚它们是如何工作的。这是 API 的路由列表

POST "/api/v0/servers"
GET "/api/v0/servers"
GET "/api/v0/servers/:id"
PUT "/api/v0/servers/:id"
DELETE "/api/v0/servers/:id"
GET "/api/v0/servers/:id/version"

GET "/api/v0/servers/:id/query"

POST "/api/v0/dashboards"
GET "/api/v0/dashboards"
GET "/api/v0/dashboards/:id"
GET "/api/v0/dashboards/:id/export"
PUT "/api/v0/dashboards/:id"
DELETE "/api/v0/dashboards/:id"
DELETE "/api/v0/dashboards/:id/visualizations/:vid/cell"
POST "/api/v0/dashboard_import"

POST "/api/v0/dashboards/:id/cells"
PUT "/api/v0/dashboards/:id/cells"

POST "/api/v0/visualizations"
GET "/api/v0/visualizations"
GET "/api/v0/visualizations/:id"
PUT "/api/v0/visualizations/:id"
DELETE "/api/v0/visualizations/:id"

POST "/api/v0/visualizations/:id/statements"
PUT "/api/v0/visualizations/:id/statements/:sid/text"
PUT "/api/v0/visualizations/:id/statements/:sid/config"
DELETE "/api/v0/visualizations/:id/statements/:sid"
于 2016-04-19T17:16:47.693 回答