Logstash 将日志聚合到 ElasticSearch

Logstash 将日志聚合到 ElasticSearch

我正在尝试将 Linux 日志聚合rsyslog到在 EKS 中运行的 Logstash/ElasticSearch 中。

filebeat已在 EKS 中运行,以聚合 Kubernetes 容器日志。

我已配置rsyslog客户端:

#/etc/rsyslog.d/50-default.conf
*.*;syslog;auth,authpriv.none   /var/log/syslog

# /etc/rsyslog.d/49-ship-syslog.conf
*.*;syslog;auth,authpriv.none action(
  type="omfwd"
  Target="logstash.dev.domain.com"
  Port="5000"
  Protocol="tcp"
)

logstash

input {
  tcp {
    port => 5000
    type => syslog
  }
}

filter {
    grok {
        match => {
            "message" => "%{SYSLOGLINE}"
        }
    }
}

output {
  elasticsearch {
    hosts => ["elasticsearch:9200"]
    index => "logstash-%{+YYYY.MM.dd}"
  }
  stdout { codec => rubydebug }
}

我能做到:

$nc -vz -u logstash.dev.domain.com 5000
found 0 associations
found 1 connections:
     1: flags=82<CONNECTED,PREFERRED>
    outif (null)
    src 10.24.11.90 port 58291
    dst 47.176.158.158 port 5000
    rank info not available

Connection to logstash.dev.domain.com port 5000 [udp/commplex-main] succeeded!

也可以发送测试消息:

echo -n "test message" | nc -4u -w1 logstash.dev.domain.com 5000

tcpdump port 5000但在 logstash 或 Kibana UI 中看不到任何Logstash内容收到的事件 0

但是当我登录到logstash容器并输入echo -n "test message" | nc -4u -w1 logstash.dev.domain.com 5000时,我看到了此消息tcpdump port 5000

我在这里遗漏了什么?

版本 : logstash:7.2.1 rsyslog 3.5

相关内容