我正在尝试在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>
我想对不同的部署使用不同的解析器。所以我想知道:
kubernetes中的“ kubernetes。**”是什么?是部署名称还是部署标签?
在docker-compose文件中,我们可以在不同的容器上进行标记,并在fluentd的“过滤器”中使用该标记。在kubernetes中,有什么类似的方法吗?
感谢您的帮助!
答案 0 :(得分:2)
它与kubernetes或部署无关; ActivityNotFoundException
语法代表了顶级fluentd
“标记”及其作为事件发布的所有子项,正如人们所看到的here