如何使用 FileBeat 将日志发送到弹性搜索,只有一个事件?
How to send a log to elastic search using FileBeat, with only one event?
我有几个应用程序以 txt 和日志格式生成日志,需要将所有信息发送到 Kibana,我能够发送这些日志,但在一个事件中发送文件的每一行。
我想在一个事件中发送所有日志行,应用程序日志格式示例:
16/09/2021 14:32:37 - [ INFO ] - Lendo arquivo de configuração
16/09/2021 14:32:38 - [ INFO ] - UID de Execução: d6649885-37f1-4f98-ba86-c23289fbad25
16/09/2021 14:32:41 - [ INFO ] - Iniciando extração de arquivo .RAR...
16/09/2021 14:32:42 - [ ERROR ] - Erro de execução: System.ArgumentException: File does not exist: C:\Users.903007\Desktop\Base 2\arquivo rar\BaseII_cbss_16092021.rar
at SharpCompress.Archives.AbstractArchive`2..ctor(ArchiveType type, FileInfo fileInfo, ReaderOptions readerOptions)
at SharpCompress.Archives.Rar.RarArchive..ctor(FileInfo fileInfo, ReaderOptions options)
at SharpCompress.Archives.Rar.RarArchive.Open(String filePath, ReaderOptions options)
at BaseII.Program.Main(String[] args) in C:\Users.903007\Desktop\teste\legacyautomation\BaseII\Program.cs:line 45
我想在一个事件中发送所有日志行,这可能吗?
您可以在 filebeat.inputs
部分下的 filbeat.yml
配置中指定 multiline
选项。
示例配置:
multiline.type: pattern
multiline.pattern: '^\dd/dd/dddd'
multiline.negate: true
multiline.match: after
该设置可确保 Filebeat 获取所有不以日期开头的行,并将它们与之前以日期开头的行合并。
模式只是一个正则表达式。
如果那是 Java 堆栈跟踪,您甚至可以使用这个正在寻找空白字符的堆栈跟踪:
multiline.type: pattern
multiline.pattern: '^[[:space:]]'
multiline.negate: false
multiline.match: after
我有几个应用程序以 txt 和日志格式生成日志,需要将所有信息发送到 Kibana,我能够发送这些日志,但在一个事件中发送文件的每一行。 我想在一个事件中发送所有日志行,应用程序日志格式示例:
16/09/2021 14:32:37 - [ INFO ] - Lendo arquivo de configuração
16/09/2021 14:32:38 - [ INFO ] - UID de Execução: d6649885-37f1-4f98-ba86-c23289fbad25
16/09/2021 14:32:41 - [ INFO ] - Iniciando extração de arquivo .RAR...
16/09/2021 14:32:42 - [ ERROR ] - Erro de execução: System.ArgumentException: File does not exist: C:\Users.903007\Desktop\Base 2\arquivo rar\BaseII_cbss_16092021.rar
at SharpCompress.Archives.AbstractArchive`2..ctor(ArchiveType type, FileInfo fileInfo, ReaderOptions readerOptions)
at SharpCompress.Archives.Rar.RarArchive..ctor(FileInfo fileInfo, ReaderOptions options)
at SharpCompress.Archives.Rar.RarArchive.Open(String filePath, ReaderOptions options)
at BaseII.Program.Main(String[] args) in C:\Users.903007\Desktop\teste\legacyautomation\BaseII\Program.cs:line 45
我想在一个事件中发送所有日志行,这可能吗?
您可以在 filebeat.inputs
部分下的 filbeat.yml
配置中指定 multiline
选项。
示例配置:
multiline.type: pattern
multiline.pattern: '^\dd/dd/dddd'
multiline.negate: true
multiline.match: after
该设置可确保 Filebeat 获取所有不以日期开头的行,并将它们与之前以日期开头的行合并。
模式只是一个正则表达式。
如果那是 Java 堆栈跟踪,您甚至可以使用这个正在寻找空白字符的堆栈跟踪:
multiline.type: pattern
multiline.pattern: '^[[:space:]]'
multiline.negate: false
multiline.match: after