首页 > 解决方案 > 如何从现有日志中提取字段(ECS 中的fluent-bit)

问题描述

我已经在我的 ECS 集群上配置了 Fluent-bit。我可以在 Kibana 中看到日志。但是所有日志数据都发送到单个字段“日志”。如何将每个字段提取到单独的字段中。在这个问题中已经有一个 fluentd 的解决方案。

但是我怎样才能用 fluent-bit 达到同样的效果呢?

Kuberntetes 中有一个 fluent-bit 的解决方案:https ://docs.fluentbit.io/manual/filter/kubernetes

如何在 ECS 中实现相同的目标?

标签: elasticsearchkibanaamazon-ecsfluent-bit

解决方案


通常 fluent-bit 发送准确的 docker 日志文件,/var/lib/docker/containers/*/*.log 您可以在您的机器上浏览此路径,并查看它包含您提到的两个字段的 JSON 字符串。

从这里你有很多方法,我会发现两种我很熟悉的方法:

  1. 使用logstash

    你应该很清楚日志结构。这有助于您为解析日志字段创建正确的过滤器管道。通常,人们为此使用过滤器插件。如果您添加日志示例,我将能够制作这样的过滤器示例

  2. 使用elasticsearch 摄取节点

    你应该很清楚日志结构。为了能够轻松地为解析日志字段创建处理器管道。更一次,具体的日志示例帮助我们帮助您。

最常用的过滤器/处理器是 grok过滤器/处理器。这个工具有很多选项可以从任何日志中解析结构化文本。


推荐阅读