logstash - Logstash 混合日志解析
问题描述
我正在通过 Logstash 处理具有各种模式的单行消息和多行消息的日志文件,我想将多行消息作为单行消息读取,并将单行消息按原样读取。
目前,我正在使用以下 Logstash 配置,但这会在输出中创建重复消息。此外,对于每一种新的多行消息模式,我都需要使用自己的多行编解码器创建一个单独的输入。有没有办法将所有这些模式组合成一个输入?
示例 Logstash 配置文件:
input {
#Using a single log file as input, containing multiple multi-line messages (patterns) and single line messages
file {
codec => multiline {
pattern => pattern1
....
}
}
file {
codec => multiline {
pattern => pattern2
....
}
}
file {
#Single line message processing
}
}
filter {
#Contains filters and parsing for both multi-line and single line messages
}
output {
#To json file
}
我想做的事:
input {
file {
codec => multiline {
pattern => pattern1,pattern2,....
....
}
}
file {
#Single line messages input
#May not be needed
}
}
此外,您可以在 Logstash 中使用多行编解码器输入处理单行消息吗?