Kafka Fluentd访问列表项

7kqas0il  于 2023-02-03  发布在  Apache
关注(0)|答案(1)|浏览(87)

我工作的Fluentd的一个yaml文件配置。输入数据来自Kafka作为json文件。其中一些是列表,如:
{ a:[ a1:"1", a2:"2", ... ], b:"10" } Fluentd如何访问该json的一系列列表项(如前10项)?我编写了以下配置来访问特定项:
$.a[0]
并尝试一些配置来访问前10个,例如:
$.a[0:10]
$.a[0-10]
但是没有用!你能帮帮我吗?

4nkexdtk

4nkexdtk1#

我用一个例子来解释:假设我们在Fluentd中有以下记录:

"key1": 1,
"key2": 2,
"key3": {
    "a": 1,
    "b": 1,
    "c": 1,
    "d": [
    {
        "d1": 1,
        "d2": 2,
    },
    {
        "d1": 1,
        "d2": 2,
    },
    {
        "d1": 1,
        "d2": 2,
    }, ...
    ]
  }

清单***d可能有更多类似物品。
如何删除/访问
所有
***Key3.d.d2***?
据此,我通过以下方式处理了该问题:
$.Key3.d[0].d2,$.Key3.d[1].d2, $.Key3.d[2].d2,...
但这不是一个好的解决方案,因为我不知道列表d的长度是多少。

相关问题