如何在 filebeat 中格式化日志

How to format logs in filebeat

我是 filebeat 和 elasticsearch 的新手。我正在做一个业余爱好项目,我想解析我的数据文件。每个数据文件包含以下格式的信息,

<name>
<question>
<ans1>
<ans2>
<ans3>
..etc

我想读取此数据并存储在 es 中,例如

{
 id : <separate_id_for_each_file>,
 name: <name>,
 question: <question>,
 ans1: <ans1>, ..etc
}

如何使用 filebeat 执行此操作?

截至目前,您无法使用 filebeat 执行此操作。 在将日志发送到 grok 之前,您需要将日志发送到 logstash, then transform it usign a plugin like grok and then send it to elastic, if you wish to add a id to the log, you can use something like the uuid 插件。 Filebeat 的目的只是为了收获 将读取您的日志并发送然后转发

因此您的流程将类似于:filebeat > LOGSTASH[uuid,grok] > ElasticSearch

如果您需要 grok 模式的示例,这些可能很有用: 神交模式的集合: https://github.com/logstash-plugins/logstash-patterns-core/blob/master/patterns/grok-patterns

Grok 模式测试器: http://grokconstructor.appspot.com/do/match