如何解决尝试在telegraf的“ tag_keys”输入插件中添加可变数量的嵌套标签
我正在尝试使用telegraf输入插件在json数据中使用arris正确标记某些嵌套标签。
如果我手动指定它们,我可以做到这一点而没有问题,问题取决于服务器,带有这些标签的条目数可能会有所不同,因为您会看到telegraf为它们命名,例如“ xxxx_number_yyyy”,其中第一个标签号为0,第二个是一个,依此类推。
因此,对于像这样的json代码:
{
"body": {
"item": {
"name": "mydatasource","type": "Generic","instances": [
{
"server": "server1","state": "Running","connectionsTotalCount": 20
},{
"server": "server2","connectionsTotalCount": 46
}
]
}
}
}
和Telegraf中的输入配置类似:
[[inputs.exec]]
commands = ["command that extracts data in json format"]
data_format = "json"
json_query = "body.item"
tag_keys = ["name","WANT TO ADD INSTANCE_#_SERVER HERE WITHOUT SPECIFYING THEM MANUALLY"]
json_string_fields = ["type","instances_?_state"]
telefgraf的输出如下:exec_command,host=myhost.example.com,name=mydatasource,instances_0_connectionsTotalCount=20,instances_0_server="server1",instances_0_state="Running",instances_1_connectionsTotalCount=46,instances_1_server="server2",instances_2_state="Running" 1598295890000000000
如您所见,在这种情况下,有两个,所以我很容易拥有:
tag_keys = ["name","instances_0_server","instances_1_server"]
问题是这必须适用于数十种不同的配置,并且有些可以具有数十台服务器,我想自动以这种模式添加tag_keys,我尝试使用通配符,但似乎无法与tag_keys一起使用。
有什么办法解决这个问题吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。