rsyslog 转发器似乎不起作用

rsyslog forwarder seems not not work

我想将 rsyslog 消息发送到我的 ELK 堆栈,但它不起作用 rsyslog 配置文件

*.* @@127.0.0.1:10514
local6.*    /tmp/grenard.log
&~

logstash 配置文件

input {
        syslog {                 
           port => 10514
           type => "syslog"
        }
        stdin {}
}

output {
  stdout { codec => rubydebug } 
}

logstash 真正监听 10514 (telnet localhost 10514 )(使用本地主机 telent 10514 进行测试,我可以在我的标准输出中看到它

root@VM-GUILLAUME /etc/logstash/conf.d # /opt/logstash/bin/logstash -f /etc/logstash/conf.d Settings: Default filter workers: 4 Logstash startup completed { "message" => "bonjour\r\n", "@version" => "1", "@timestamp" => "2016-03-01T10:55:41.488Z", "type" => "syslog", "host" => "0:0:0:0:0:0:0:1", "tags" => [ [0] "_grokparsefailure_sysloginput"

此外,日志文件已完成,所以我知道我的 rsyslog conf 没问题

logger -t apache -i -p local6.info $(date)

日志文件

Mar 1 12:06:04 localhost apache[13700]: mar. mars 1 12:06:04 CET 2016

问题出在 tcp (@@)。使用 udp (@) 问题解决了。这是我的 rsyslod.d/grenard.conf

*.* @127.0.0.1:10514
local6.*        /tmp/grenard.log

&~