我想将XML文件摄取到ELK-Stack。我想要每个XML文件一个事件。这些XML文件以换行结束,因此filebeat的多行编解码器永远不会将XML的最后一行转发给Logstash。因此,Logstash的XML过滤器无法正确解析XML。
我正在使用filebeat 5.2.1。
我的XML看起来像这样(我插入换行符(LF)来显示):
LF
<taskReport>LF
LF
<toplevelinfo Error="0" Warning="0"/>LF
LF
</taskReport>
我的filebeat.yml看起来像这样:
filebeat.prospectors:
-
paths:
- C:\*.xml
input_type: log
document_type: xml
multiline:
pattern: '^<taskReport>'
negate: true
match: after
output.logstash:
hosts: ["LS:5044"]
filebeat中是否有一个选项可以在事件中发送最后一行?
如果我在XML logstash的末尾手动添加换行符可以完美地解析XML,但这不是我的选择。