首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Logstash过滤MongoDB文档的深层字段

使用Logstash过滤MongoDB文档的深层字段
EN

Stack Overflow用户
提问于 2020-02-24 13:18:43
回答 1查看 159关注 0票数 0

在使用Logstash将其上传到弹性文档之前,我正在尝试从我的MongoDB文档中重命名一些深度字段。

例如:我的MongoDB文档如下所示:

代码语言:javascript
复制
name: "firstDoc",
infoArray: 
[
   {infoName: "i", elements:{e1: "e1", e2: "e2"}}, 
   {infoName: "j", elements:{e3: "e3", e4: "e4"}}
]

我能够像这样访问logstash中的"name“字段:

代码语言:javascript
复制
mutate { add_field => {"[otherDoc][name]" => "%{[document][name]}"} }

但是我无法访问infoArray中的字段,我尝试了重命名:

代码语言:javascript
复制
mutate { rename => {"[document][infoArray][elements][e1]" => "[otherDoc][e1]"} }

我也尝试把它作为一个新的领域:

代码语言:javascript
复制
mutate { add_field => {"[otherDoc][e1]" => "%{[document][infoArray][elements][e1]}"} }

但还是不起作用。

有什么办法可以进入深井吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-27 13:02:38

我找到了以下解决办法:

代码语言:javascript
复制
mutate { rename => {"[document][infoArray][0][elements][e1]" => "[otherDoc][e1]"} }

代码语言:javascript
复制
mutate { add_field => {"[otherDoc][e1]" => "%{[document][infoArray][0][elements][e1]}"} }

infoArray的索引应该在Logstash.中指定。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60376803

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档