【问题标题】:Injest logs as JSON in Container Optimized OS在 Container Optimized OS 中以 JSON 形式注入日志
【发布时间】:2020-09-29 09:29:14
【问题描述】:

借助 Container Optimized OS 中的堆栈驱动程序日志记录代理,我能够将日志注入 Google 日志查看器。

它将日志作为值注入到消息中,而不是作为默认配置的 json 负载

我尝试了什么?

我已将 /etc/stackdriver/logging.config.d/fluentd-lakitu.conf 中的 fluentd 配置更改为以下内容:

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

但它无法将日志发送到日志查看器

操作系统: 容器优化操作系统 cos-81-12871-1196-0

【问题讨论】:

    标签: docker logging google-cloud-platform stackdriver google-container-optimized-os


    【解决方案1】:

    我在Google's Public Issue Tracker 上发现了这个问题,它讨论了您在用例中提到的相同问题。 Google 产品团队已收到有关此限制的通知,他们正在努力解决此问题。您只需前往那里并点击标题旁边的星号,即可获取有关问题的最新信息,并让问题更加可见。

    【讨论】:

      【解决方案2】:

      正如@Kamelia Y 提到的https://issuetracker.google.com/issues/137517429

      提到了使用的解决方法

      <filter cos_containers.**>
      @type parser
      format json
      key_name message
      reserve_data false
      emit_invalid_record_to_error false
      </filter>
      

      上述 sn-p 将日志解析为 JSON 并注入到 Cloud Logging。

      在 Stackdriver 上 Google Groups 的讨论中,我们讨论了如何将它与启动脚本一起使用。

      这里是启动脚本的 sn-p。

      cp /etc/stackdriver/logging.config.d/fluentd-lakitu.conf /etc/stackdriver/logging.config.d/fluentd-lakitu.conf-save
      # Shorter version of the above: cp /etc/stackdriver/logging.config.d/fluentd-lakitu.conf{,-save}
      (
      head -n -2 /etc/stackdriver/logging.config.d/fluentd-lakitu.conf-save; cat <<EOF
      <filter cos_containers.**>
      @type parser
      format json
      key_name message
      reserve_data false
      emit_invalid_record_to_error false
      </filter>
      EOF
      ) > /etc/stackdriver/logging.config.d/fluentd-lakitu.conf
      sudo systemctl start stackdriver-logging
      

      此图像可用于生成随机 JSON 日志。 https://hub.docker.com/repository/docker/patelathreya/json-random-logger

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-02-09
        • 2018-06-20
        • 2021-03-27
        • 2023-02-08
        • 2019-11-22
        • 1970-01-01
        • 2018-08-06
        • 1970-01-01
        相关资源
        最近更新 更多