Influxdb 更正XDB中新测量值上不正确的host_1标记

Influxdb 更正XDB中新测量值上不正确的host_1标记,influxdb,telegraf,Influxdb,Telegraf,我的新指标登录到“主机1”时出现问题,主机标记为空: select * from telegraf.live.swap where time < '2020-01-25T21:44:00Z' order by time desc limit 10 我已尝试备份到swap2,并删除度量值,然后使用标记host='web3'正确记录度量值。但是,在这样做之后: select * into telegraf.live.swap from telegraf.live.swap2 where ho

我的新指标登录到“主机1”时出现问题,主机标记为空:

select * from telegraf.live.swap where time < '2020-01-25T21:44:00Z' order by time desc limit 10
我已尝试备份到swap2,并删除度量值,然后使用标记host='web3'正确记录度量值。但是,在这样做之后:

select * into telegraf.live.swap from telegraf.live.swap2 where host='web3' group by *
然后我得到了相同的情况,所有新的度量结果都是host_1已填充,host为空,而从swap2插入的度量则正常

有人能解释一下吗? 或者有什么提示我如何解决这个问题

更新: 我检查了telegraf发送给XDB的内容,度量行如下所示:

swap,host=web3 used=345272320i,free=3748364288i,used_percent=8.434366629545249,total=4093636608i 1580589300000000000
更新: 进一步检查发现,在这个度量中,有一个名为host的标记,还有一个名为host的字段。新的指标出现在标签上,而我的旧数据只有字段


不过,我的问题仍然存在:如何将这两列合并到一个“主机”标记中?我试着选择进入。。。。按主机分组(省略主机列),但是,许多指标都有一个空主机标记:(

问题似乎不在XDB端,而是在将数据推送到数据库中的过程中。似乎tag
host
不是由您的日志客户端填写或提供的,而您的日志客户端发送tag
host\u 1
。如前所述,当我完全删除度量值而不更改telegraf时,度量值会被正确记录。但当当将旧数据复制回时,新数据会再次登录到主机1上。据我所知,db中
host\u 1
标记的原始来源仍然是telegraf。因此telegraf是主要嫌疑犯。我建议添加
[[outputs.file]]
暂时转到telegraf配置部分,查看发送到db的原始线路协议数据。同时检查
主机1
是否真的是标记而不是字段。
由telegraf发送的主机1
作为字段可以解释您的观察结果。已检查。telegraf的输出线路添加到原始问题中。具有重复的标记和字段名称通常是错误的出现问题的方法应该避免。您的telegraf输出看起来很好,您所需要的只是在
swap
测量中消除重复的
host
字段。使用
show tag keys
show field keys
命令进行验证。您可能需要使用
name::tag
语法,请参阅中的详细信息(标签和字段键同名)[XDB常见问题解答中的部分。
swap,host=web3 used=345272320i,free=3748364288i,used_percent=8.434366629545249,total=4093636608i 1580589300000000000