gpt4 book ai didi

xpath - 使用 logstash 解析带有命名空间的 XML 文档

转载 作者:行者123 更新时间:2023-12-03 16:53:24 25 4
gpt4 key购买 nike

我正在尝试使用logstash解析以下xml数据。我可以通过从标签中删除命名空间来做到这一点。但是当我在其中包含命名空间的实际文档上尝试它时,它无法解析这些字段。有人可以帮助使用命名空间还是我在其他地方出错了吗?

<Book:Body>
<Book:Head>
<bookname>Book:Name</bookname>
<ns:Hello xmlns:ns="www.example.com">
<ns:BookDetails>
<ns:ID>123456</ns:ID>
<ns:Name>ABC</ns:Name>
</ns:BookDetails>
</ns:Hello xmlns:ns="www.example.com">
</Book:Head>
</Book:Body>

以下是我的配置文件:
multiline   {
pattern => "<Book:Body>"
what => "previous"
negate => "true"
}

xml {
store_xml => "false"
source => "message"
remove_namespaces => "true"

xpath =>[
"/Book/Book/BookDetails/ID/text()","ID",

"/Book/Book/BookDetails/Name/text()","Name"
]


}

mutate {
add_field => ["IDIndexed", "%{ID}"]
add_field => ["NameIndexed", "%{Name}"]
}

由于它没有被解析,我只是使用 mutate 获取 %{ID} 和 %{Name} ,而不是获取它们的实际值。

最佳答案

问题出在 xpath 中:
试试这个

xpath => [
"/Body/head/Hello/BookD/BookDetails/ID/text()", "ID",
"/Body/head/Hello/BookD/BookDetails/Name/text()", "Name",
]

关于xpath - 使用 logstash 解析带有命名空间的 XML 文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32609055/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com