【问题标题】:Forward Docker log to logstash using syslog driver使用 syslog 驱动程序将 Docker 日志转发到 logstash
【发布时间】:2017-05-15 04:03:39
【问题描述】:

我需要将 docker 日志转发到 ELK 堆栈。

栈管理员根据消息的类型参数过滤我的日志。现在我使用 filebeat 并且必须设置 document_type 参数,以便 Logstash 配置正确过滤我的消息。

我现在试图避免使用 Filebeat,因为我将按需实例化我的 EC2 机器,并且不想在运行时在每台机器上都安装 filebeat。

我已经看到有一个可用的系统日志驱动程序。我设置了 syslog 驱动程序,消息转到 Logstash,但我无法找到如何为 document_type 设置值,就像在 filebeat 中一样。如何使用 Syslog 驱动程序或任何其他 Docker 原生驱动程序将此元数据发送到 Logstash?

谢谢!

【问题讨论】:

  • 您好,我已经将 syslog 设置为驱动程序(docker run --log-driver=syslog),但问题是:如何在何时发送 document_type 元数据在我使用驱动程序时登录。谢谢!

标签: docker logstash syslog


【解决方案1】:

你不能给你的系统日志输出一个这样的标签吗:

docker run -d --name nginx --log-driver=syslog --log-opt syslog-address=udp://LOGSTASH_IP_ADDRESS:5000 --log-opt syslog-tag="nginx" -p 80:80 nginx

然后在您的 logstash 规则中:

filter {
  if "nginx" in [tags] {
    add_field => [ "type", "nginx" ]
  }
}

【讨论】:

    猜你喜欢
    • 2015-02-15
    • 1970-01-01
    • 1970-01-01
    • 2016-11-19
    • 1970-01-01
    • 2017-09-18
    • 1970-01-01
    • 2016-07-02
    • 2020-02-19
    相关资源
    最近更新 更多