TL;DR InfluxDB技术技巧:相同的字段键和标签键、Chronograf中现有的Kapacitor TICKscripts等
作者:Regan Kuchan / 产品,开发者
2017年5月18日
导航至
相同的字段键和标签键
问:我的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 enable
和kapacitor disable
命令) - 在警报规则页面上删除现有任务(这相当于
kapacitor delete tasks
命令)
您不能在Chronograf的警报规则页面上编辑现有任务。下面的图像中的mytick
任务是一个现有任务;它的名称出现在警报规则页面上,但您不能点击它或通过界面编辑其TICKscript。目前,您必须手动在您的机器上编辑现有任务和TICKscripts。
接下来是什么
- 下载 的TICK-stack在我们的"下载"页面上。
- 云上部署:免费试用InfluxDB Cloud,包含全托管集群、Kapacitor和Grafana。
- 服务器部署:想在您的服务器上运行InfluxDB集群?免费试用14天的InfluxDB Enterprise,包含直观的用户界面用于部署、监控和重新平衡集群,以及管理备份和还原。
- 分享您的故事:300多家公司已经分享了他们如何利用InfluxDB取得成功的经历。提交您的评价,即可获得限量版卫衣作为感谢。