TL;DR InfluxDB技术技巧:相同的字段键和标签键、Chronograf中现有的Kapacitor TICKscripts等

导航至

相同的字段键和标签键

问:我的InfluxDB模式由feet-attire测量,跟踪鞋颜色的shoes标签,以及跟踪鞋数量的shoes字段组成。当我尝试查询shoes标签和shoe字段时,我看到了重复的shoe字段行,但没有关于shoe标签的任何内容。有没有办法同时看到字段和标签呢?

> SELECT "shoes","shoes" FROM "feet-attire"

name: feet-attire
time                            shoes shoes_1
----                            ----- -------
2017-05-17T20:34:32.143717027Z  12    12
2017-05-17T20:34:39.949844001Z  15    15
2017-05-17T20:34:47.325195089Z  16    16

答:当然有!使用::语法来指定标识符是字段还是标签

> SELECT "shoes"::field,"shoes"::tag FROM "feet-attire"

name: feet-attire
time                            shoes shoes_1
----                            ----- -------
2017-05-17T20:34:32.143717027Z  12    yellow
2017-05-17T20:34:39.949844001Z  15    blue
2017-05-17T20:34:47.325195089Z  16    pink

称为time的字段键或标签键

问:我正在使用InfluxDB版本1.2.2,但我似乎无法查询我的数据。看起来写入是成功的,但我的查询没有返回任何结果。你能帮我一下吗?我错在哪里了?

~# curl -i -XPOST "https://127.0.0.1:8086/write?db=tldr&u=<username>&p=<password>" --data-binary 'creatures time="1h"'
HTTP/1.1 204 No Content
Content-Type: application/json
Request-Id: b76456c6-3b47-11e7-8f86-000000000000
X-Influxdb-Version: 1.2.1-c1.2.2
Date: Wed, 17 May 2017 21:28:06 GMT

~# curl -G "https://127.0.0.1:8086/query?db=tldr&u=<username>&p=<password>" --data-urlencode 'q=SHOW MEASUREMENTS'
{"results":[{"statement_id":0}]}


~# curl -G "https://127.0.0.1:8086/query?db=tldr&u=<username>&p=<password>" --data-urlencode 'q=SELECT * FROM creatures'
{"results":[{"statement_id":0}]}

答:你的语法看起来是正确的!问题是出在time上。time是InfluxDB中的一个特殊关键字。time可以是连续查询名称、数据库名称、测量名称、保留策略名称、订阅名称或用户名。它不能是InfluxDB中的字段键标签键

在版本1.2.2(更具体地说,版本1.2.0-1.2.3)中,InfluxDB接受将time作为字段或标签键的写入,但它会静默地丢弃字段键或标签键及其关联的值。在版本1.2.4中,我们改变了这种行为;InfluxDB拒绝将time作为字段键或标签键的写入,并返回错误。有关更多信息,请查看我们的常见问题解答页面!

Chronograf中的现有Kapacitor TICKscripts

问:我刚刚开始使用Chronograf,我有一些在开始使用Chronograf之前创建的Kapacitor任务。这些任务会在Chronograf的警报规则页面上显示吗?

答:目前,在Chronograf之外创建的Kapacitor任务在用户界面中功能有限。

在Chronograf中,您可以

  • 在警报规则页面上查看现有任务
  • 在警报历史记录页面上查看现有任务的活动
  • 在警报规则页面上启用和禁用现有任务(这相当于kapacitor enablekapacitor disable命令)
  • 在警报规则页面上删除现有任务(这相当于kapacitor delete tasks命令)

您不能在Chronograf的警报规则页面上编辑现有任务。下面的图像中的mytick任务是一个现有任务;它的名称出现在警报规则页面上,但您不能点击它或通过界面编辑其TICKscript。目前,您必须手动在您的机器上编辑现有任务和TICKscripts。

接下来是什么

  • 下载 的TICK-stack在我们的"下载"页面上。
  • 云上部署:免费试用InfluxDB Cloud,包含全托管集群、Kapacitor和Grafana。
  • 服务器部署:想在您的服务器上运行InfluxDB集群?免费试用14天的InfluxDB Enterprise,包含直观的用户界面用于部署、监控和重新平衡集群,以及管理备份和还原。
  • 分享您的故事:300多家公司已经分享了他们如何利用InfluxDB取得成功的经历。提交您的评价,即可获得限量版卫衣作为感谢。