【发布时间】:2025-12-26 23:15:16
【问题描述】:
我正在尝试使用 fileBeat(无 Logstash)将日志推送到 elasticSearch
我想发送以下登录单条消息,但它被分成多条消息,每一行变成单独的消息
20161014 17:49:09.169 [ERROR] [Thread-2974] some.java.class.:70 - some.java.Exception: write failed. History: [requestHost=123-some.org.com, time=Fri Oct 14 17:49:05 GMT-07:00 2016, exception=java.net.SocketTimeoutException]
[requestHost=123-some.org.com, time=Fri Oct 14 17:49:07 GMT-07:00 2016, exception=java.net.SocketTimeoutException]
[requestHost=123-some.org.com, time=Fri Oct 14 17:49:09 GMT-07:00 2016, exception=java.net.SocketTimeoutException]
Tried 3 times
at java.lang.Thread.run(Thread.java:745)
20161014 17:49:09.169 [ERROR] [Thread-3022]
我想合并两个日期之间的所有行(第一行和最后一行)
这是我的filebeat.ymlsn-p
paths:
- /test.log
multiline.pattern: '^\[0-9]{8}'
multiline.negate: true
multiline.match: after
我需要知道正确的regex
我正在尝试不使用logstash来解决这个问题
【问题讨论】:
-
通过转义左括号,您将删除它的权力并匹配文字括号。
-
我在 go playground 上尝试了一些正则表达式(来自 filebeat 文档),它们是有效的,但实际上它们都给了我同样的问题,我不是正则表达式忍者,但看起来我需要花一些时间并解决这个问题,或者只使用带有 GROK 过滤器的 logstash
-
这个问题中提供的虚线配置对我有用。 Filebeat 版本 - 6.8.14
标签: elasticsearch logstash logstash-grok filebeat