【问题标题】:How to get filebeat to ignore certain container logs如何让 filebeat 忽略某些容器日志
【发布时间】:2019-10-29 06:35:26
【问题描述】:

我在 Kubernetes 集群中使用 elasticserach 6.8 和 filebeat 6.8.0。我希望 filebeat 忽略某些容器日志,但这似乎几乎是不可能的 :)。

这是我的自动发现配置

filebeat.autodiscover:
  providers:
   - type: kubernetes
     hints.enabled: true
     templates:
      - condition:
        contains:
          kubernetes.namespace: bagmessage
        config:
         - type: docker
           containers.ids:
             - "${data.kubernetes.container.id}"
           processors:
             - drop_event:
                 when:
                   or: 
                     - contains:
                         kubernetes.container.name: "filebeat"
                     - contains:
                         kubernetes.container.name: "weave-npc"
                     - contains:
                         kubernetes.container.name: "bag-fluentd-es"
                     - contains:
                         kubernetes.container.name: "logstash"
                     - contains:
                         kubernetes.container.name: "billing"

我已经尝试了此配置的许多变体,但 filebeats 仍在处理我希望它忽略的容器日志。

我想知道我想做的事情是否可行,如果可以,我做错了什么?

谢谢

【问题讨论】:

  • 请详细说明您想忽略的“某些容器日志”。举个例子。
  • 我想忽略名称中包含“帐单”的容器的日志
  • 你的问题解决了吗?

标签: elasticsearch kubernetes filebeat


【解决方案1】:

我在您的配置中看到的第一个错误是templatecondition 部分的缩进不正确。应该是:

   - type: kubernetes
     hints.enabled: true
     templates:
       - condition:
           contains:
             kubernetes.namespace: bagmessage

其次,我不确定kubernetes.* 对配置内的处理器是否可见type: docker。您可以尝试引用docker.container.name。或者,您可以将所有特定于 k8s 的条件移动到 templates 下的 condition 部分:

filebeat.autodiscover:
  providers:
    - type: kubernetes
      hints.enabled: true
      templates:
        - condition:
            and:
              - contains.kubernetes.namespace: bagmessage
              - contains.container.name: billing
          config:
              ...

另外,请确保“container.name”(但不是“pod.name”)确实是您想要的。

【讨论】:

  • 另外,我建议从单个 pod/容器的简单条件开始,以验证错误在哪里。
  • - condition: 之前显示缩进应该如何看起来像它有1 个空格太多(或太少,取决于你的风格)的块。我会提交修改,但字符太少。
【解决方案2】:

现在似乎可以工作了。我不确定是什么问题。

【讨论】:

    猜你喜欢
    • 2018-03-10
    • 2014-10-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-30
    • 1970-01-01
    • 2010-10-15
    相关资源
    最近更新 更多