繁体   English   中英

Fluentd:更改主机字段(Splunk HEC 输出)

[英]Fluentd: Change host field (Splunk HEC output)

我部署了 BanzaiCloud Logging Operator 以使用 fluentd 将日志发送到 Splunk。 Splunk 将源(主机)解释为fluentd-0但我希望将$namespace.$pod作为主机字段。 我试图用 record_modifier 覆盖该字段,最终获得第二个主机字段。

...
spec:
  filters:
  - record_transformer:
      records:
      - host: ${namespace_name}.${pod_name}
...

我还尝试了替换记录修饰符的 function - 没有成功。

spec:
  filters:
  - record_modifier:
      replaces:
      - key: host
        expression: /^fluentd-0$/
        replace: ${namespace_name}.${pod_name}

我认为主机字段不是“日志有效负载”的一部分,因此无法使用Record ModifierRecord Transformer进行操作

谁能告诉我需要配置什么以便将主机字段替换为 namespace.pod?

好的,我找到了解决方案:主机字段由 Output 生成,而不是由 Flow 生成。 所以像这样改变它:

apiVersion: logging.banzaicloud.io/v1beta1
kind: Output
spec:
  splunkHec:
...
    host_key: kubernetes.container_name
...

最终将预期名称作为主机而不是fluentd-0 如果应该硬编码,也可以使用host代替host_key

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM