【问题标题】:fluentd splunk-http-eventcollector plugin Bad Request 400 when using format jsonfluentd splunk-http-eventcollector插件使用json格式时出现错误请求400
【发布时间】:2018-03-29 17:34:06
【问题描述】:

我正在尝试使用 fluentd 作为守护程序集将日志从 Kubernetes 推送到 splunk。

当我设置 format none 并推动 splunk 时,它可以工作。但我想添加 kubernetes_metadata,所以我更新为 format json 并添加了 kubernetes_metadata 过滤器。

然后,我收到 400 Bad Request

{"text": "Invalid data format", "code": 6, "invalid-event-number": 0 }

这是我的 fluent.conf 文件

# Ignore fluentd log messages
<match fluent.**>
  @type null
</match>

<source>
  @type tail
  path /var/log/containers/*.log
  pos_file /fluentd/log/docker-containers.log.pos
  tag kubernetes.*
  format json
  read_from_head true
</source>

<filter kubernetes.**>
  @type kubernetes_metadata
</filter>

<match kubernetes.**>
  @type splunk-http-eventcollector
  server <host>:8088
  protocol https
  verify false
  token ***
  source fluentd-kube-containers
  sourcetype _json
  host "#{ENV['HOSTNAME']}"
  buffer_chunk_limit 700k
  batch_size_limit 1000000
  buffer_type file
  buffer_path /fluentd/log/fluentd-buffer
  flush_interval 10s
</match>

【问题讨论】:

  • 不是您原始问题的答案。但可以作为您试图解决的问题的答案。如果您对付费解决方案感到满意 - outcoldsolutions.com 我们提供了一个预构建的应用程序来监控 Kubernetes,并且还解决了从富含 Kube 元数据的 Kubernetes 容器转发日志的问题。安装需要几分钟。
  • 那么,我收到一个 400 Bad Request 你从谁那里得到这个 400?来自 Splunk?如果是这样,splunk 日志中是否有相应的错误说明 what 它收到的数据格式错误?

标签: plugins kubernetes splunk fluentd


【解决方案1】:

是我傻了,我的源不是json格式,所以splunk不喜欢它,我假设我需要在源上设置format json来获取kubernetes元数据是错误的,所以当我设置format none 并将all_items true 添加到splunk-http-eventcollector 它有效。

【讨论】:

    猜你喜欢
    • 2013-09-12
    • 1970-01-01
    • 2011-04-28
    • 2020-06-30
    • 2015-10-15
    • 1970-01-01
    • 1970-01-01
    • 2013-09-27
    • 2015-08-18
    相关资源
    最近更新 更多