首页 文章

使用syslog驱动程序将Docker日志转发到logstash

提问于
浏览
0

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

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

我现在正试图避免使用Filebeat,因为我将按需实例化我的EC2机器,并且不希望在运行时在每个机器上安装filebeat .

我已经看到了其他可用的syslog驱动程序 . 我设置了syslog驱动程序,消息转到Logstash,但我无法找到如何在filebeat中设置document_type的值 . 如何使用Syslog驱动程序或任何其他Docker本机驱动程序将此元数据发送到Logstash?

谢谢!

1 回答

  • 1

    你不能给你的syslog输出一个这样的标签:

    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" ]
      }
    }
    

相关问题