gpt4 book ai didi

Logstash 自定义日期日志格式匹配

转载 作者:行者123 更新时间:2023-12-02 18:56:53 43 4
gpt4 key购买 nike

我有一个打印日期格式的日志,如下所示:

=          Build Stamp: 10:45:33 On Apr  4 2014           =

所以我已经在 grok 调试器上运行了过滤器,但仍然不知道如何删除单词 On

grok {
patterns_dir => "./patterns"
match => { "message" => "%{F_TIMESTAMP:timestamp}" }
}

date {
match => [ "timestamp" , "HH:mm:ss MMM d yyyy" , "HH:mm:ss MMM dd yyyy" ]
locale => "en"
}

模式文件,

F_TIMESTAMP %{TIME} \On %{MONTH} +%{MONTHDAY} %{YEAR}

我当前的时间戳输出是

10:45:33 2014 年 4 月 4 日,在 grok 调试器上。

那么我怎样才能使其与logstash @timestamp兼容/匹配?

最佳答案

您可以提取日期时间的每个部分并将其合并到另一个字段中,而无需使用 On 关键字。

您可以实现以下目标:

filter {
grok {
match => { "message" => "%{F_TIMESTAMP}" }
}
mutate {
add_field => {
"timestamp" => "%{time} %{month} %{monthday} %{year}"
}
}
date {
match => [ "timestamp" , "HH:mm:ss MMM d yyyy" , "HH:mm:ss MMM dd yyyy" ]
locale => "en"
}
mutate {
remove_field => [ "time" ,"month","monthday","year","timestamp"]
}
}

F_TIMESTAMP %{TIME:时间}\s*在\s*%{MONTH:月}\s*%{MONTHDAY:月日}\s*%{YEAR:年}

它对我来说工作得很好。

关于Logstash 自定义日期日志格式匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26035136/

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