gpt4 book ai didi

json - 在Logstash中过滤JSON/非JSON条目

转载 作者:行者123 更新时间:2023-12-03 02:13:51 27 4
gpt4 key购买 nike

我有一个关于在Logstash中过滤条目的问题。我有两个不同的日志进入Logstash。一个日志只是带有时间戳和消息的标准格式,而另一个则以JSON格式出现。
我使用if语句测试某个主机,并且该主机是否存在,然后使用JSON过滤器将其应用于消息...问题是,当它遇到非JSON stdout消息时,无法解析它并引发异常。
有谁知道如何测试以查看条目是否为JSON,请应用过滤器;否则,请忽略它?
谢谢

  if [agent][hostname] == "some host"
# if an entry is not in json format how to ignore?
{
json {
source => "message"
target => "gpfs"
}
}

最佳答案

第一步,您可以尝试使用grok过滤器。

grok {
match => {
"message" => [
"{%{GREEDYDATA:json_message}}",
"%{GREEDYDATA:std_out}"
]
}
}
if [json_message]
{
mutate {
replace => { "json_message" => "{%{json_message}}"}
}
json {
source => "json_message"
target => "gpfs"
}
}

也许有比这更清洁的解决方案,但是它将完成工作。

关于json - 在Logstash中过滤JSON/非JSON条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64032391/

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