kubernetes efk:fluentd的“过滤器”过滤器是什么?

时间:2019-01-14 16:06:43

标签: kubernetes

我正在尝试在kubernetes集群中启用efk。我找到了有关fluentd的配置的文件:https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/fluentd-elasticsearch/fluentd-es-configmap.yaml

在此文件中,有:

<filter kubernetes.**>
  @id filter_kubernetes_metadata
  @type kubernetes_metadata
</filter>
# Fixes json fields in Elasticsearch
<filter kubernetes.**>
  @id filter_parser
  @type parser
  key_name log
  reserve_data true
  remove_key_name_field true
  <parse>
    @type multi_format
    <pattern>
      format json
    </pattern>
    <pattern>
      format none
    </pattern>
  </parse>
</filter>

我想对不同的部署使用不同的解析器。所以我想知道:

  1. kubernetes中的“ kubernetes。**”是什么?是部署名称还是部署标签?

  2. 在docker-compose文件中,我们可以在不同的容器上进行标记,并在fluentd的“过滤器”中使用该标记。在kubernetes中,有什么类似的方法吗?

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

它与kubernetes或部署无关; ActivityNotFoundException语法代表了顶级fluentd“标记”及其作为事件发布的所有子项,正如人们所看到的here