gpt4 book ai didi

xml - 使用 Logstash 和 Xpath 提取数据

转载 作者:行者123 更新时间:2023-12-05 07:41:43 26 4
gpt4 key购买 nike

我想通过 Logstash 中的 Xpath 插件从 XML 文件中提取数据(时间戳和消息),以便仅在 kibana 的字段中显示它们。

XML 示例:

<log4j:event logger="logger4test" timestamp="1496297008092"><log4j:message>sample message</log4j:message></log4j:event>

Logstash 配置文件:

input {
file {
path => "/opt/logs/*"
start_position => beginning
sincedb_path => "/dev/null"
type => "xml"
}
}

filter {
xml {
remove_namespaces => true
source => "file"
store_xml => false
xpath => [
"//event/@timestamp", "time",
"//message/text()", "lmessage"
]
}

if [type] == "xml" {
mutate {
replace => [
"time", "%{time}",
"lmessage", "%{lmessage}"
]
}
}
}

但是结果在 lmessage 中是值 %{lmessage} 并且在时间中是:%{time} 而不是预期的真实消息和时间。

有人可以帮助我吗? Logstash 日志中也没有错误。

最佳答案

我自己解决了这个问题。问题是“来源”字段。我不得不将"file"替换为“消息”,因为 logstash 需要从它读取 iits 数据的位置获取此信息,而“消息”是 logstash 的合适属性。

xml {
remove_namespaces => true
source => "message"
store_xml => false
xpath => [
"//event/@timestamp", "time",
"//message/text()", "lmessage"
]
}

关于xml - 使用 Logstash 和 Xpath 提取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45210750/

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