Logstash 日志存储多行配置在';实时';但在重新处理文件时有效

Logstash 日志存储多行配置在';实时';但在重新处理文件时有效,logstash,Logstash,我们使用多行编解码器和grok过滤器来监控生产中的异常 编解码器: codec => multiline { pattern => "^%{TIMESTAMP_ISO8601}" negate => true what => "previous" } 格罗克: 我们最近注意到logstash(版本6.4.2)没有处理一系列异常 我们使用Kibana中的调试工具检查了grok过滤器对于异常是否正常,它是否正常

我们使用多行编解码器和grok过滤器来监控生产中的异常

编解码器:

codec => multiline {
    pattern => "^%{TIMESTAMP_ISO8601}"
    negate => true
    what => "previous"
}
格罗克:

我们最近注意到logstash(版本6.4.2)没有处理一系列异常

我们使用Kibana中的调试工具检查了grok过滤器对于异常是否正常,它是否正常。然后,我获取日志文件并重新处理它,就好像它是一个新文件一样,在本例中,之前丢失的异常被正确处理

当我能够重现异常时,我能够重现问题,并再次看到实时遗漏了异常

像这样的日志存储中的多行编解码器是否存在已知问题/限制

grok {
    match => [ "message", "(?m)%{TIMESTAMP_ISO8601:tmp_timestamp} \[%{DATA:thread}\] %{LOGLEVEL:severity}\s+%{DATA:class} -.*?\n%{DATA:exception}: %{DATA:exceptionMessage}\n.*" ]