InfluxDB Grafana模板:无法选择"添加查询"

时间:2017-11-20 22:23:50

标签: templates influxdb grafana graphite

我相信在创建石墨数据库时我已经做好了一切。 Grafana可以查看数据,但是当我尝试添加查询时,我不会让我选择所有字段。

我服务器的输出显示数据库正在运行:

show measurements
name: measurements

name
PORT

select * from "PORT"
name: PORT
time                CardNo Counter         Nodename    PortNo value
----                ------ -------         --------    ------ -----
1511214407000000000 18     bcast_inpackets ALPRGAGQPN2 1      500

然而,当我尝试"添加查询"在格拉法纳,我可以看到PORT in" FROM" (这就是我想要的),但在" WHERE"部分,当我尝试使用CardNo,Counter等缩小我的选择时,它似乎表现为随机。如果我先选择CardNo,它会让我选择18(见下图),然后点击" +"添加另一个标准并不显示说" PortNo" (我得到的只是一个空对话框)。我可以手动输入字段值(例如PortNo),但其他用户将绘制图表并且不一定知道底层模式。另外,如果我先选择Nodename,那么我可以选择CardNo(怪异)。我喜欢它,所以最终用户可以指定所有字段(在本例中为CardNo,Counter,Nodename和PortNo)。

enter image description here

我的石墨模板是:

"[[graphite]]
# Determines whether the graphite endpoint is enabled.
  enabled = true
  database = "graphite"
# retention-policy = ""
  bind-address = ":2003"
  protocol = "tcp"
# consistency-level = "one"
  templates = [ "ASR.PORT.* .measurement.Nodename.CardNo.PortNo.Counter"
  ]

我提供给InfluxDB以测试我的设置的数据是:

echo "ASR.PORT.ALPRGAGQPN2.18.1.bcast_inpackets 500 `date +%s`" | nc localhost 2003

1 个答案:

答案 0 :(得分:0)

首先,模板最好写成:

"ASR.PORT.* .measurement.Nodename.CardNo.PortNo.field"

使bcast_inpacketsPortNo之后的任何其他值进入包含数据的字段。通过将所有计数器组合到同一系列的多个字段中而不是使用具有自己的value字段的唯一标记的单独系列,这会降低系列的基数,从而提高性能和可伸缩性。

Grafana的涌入查询构建器将过滤已选择标记值的标记值。换句话说,如果您选择PortNo=1并尝试选择其他标记,则只会显示标记键,其中PortNo = 1

如果您查看Grafana在浏览器中运行的查询,如果已选择show tag keys from PORT where PortNo='1',则会看到PortNo=1之类的内容以及其他标记的不同查询。

这就是为什么您可能看不到其他标签以及您看到哪些标签取决于已选择的标签的原因。这是设计使然,如果您想要不同的东西,则需要调整架构,例如,将PortNoCardNo放入字段而不是标记。

您可能也对InfluxGraph感兴趣,它可以通过Graphite API查询InfluxDB,并且还支持与InfluxDB相同的模板配置。