我有一个输入字符串:
XXXX NNN TIMESTAMP\r\nYYYY NNN TIMESTAMP\r\nZZZZ NNN TIMESTAMP
如何将输入解析/过滤/转换为具有字段的单个事件
{
"XXXX" : NNN,
"YYYY" : NNN,
"ZZZZ" : NNN
}
对我来说,将其作为一个单独的事件很重要
尝试下面的代码,
filter {
mutate {
gsub => ["message", "TIMESTAMP\r\n", ""]
}
grok {
match => [ "message", "(?:XXXX %{WORD:XXXX}) (?:YYYY\s%{WORD:YYYY})\s(?:ZZZZ %{WORD:ZZZZ})" ]
}
}