I have all my servers pushing syslog data to 4 logstash servers, the logstash servers are not forwarding syslog information into elasticsearch, here is my conf file
input {
tcp {
port => 5514
type => syslog
}
udp {
port => 5514
type => syslog
}
}
filter {
if ([message] =~ "LTM UDP Check") {
drop {}
}
if ([message] =~ "nrpe") {
drop {}
}
}
filter {
if [type] == "syslog" {
grok {
match => { "message" => "%{SYSLOGTIMESTAMP:syslog_timestamp} %{SYSLOGHOST:syslog_hostname} %{DATA:syslog_program}(?:[% {POSINT:syslog_pid}])?: %{GREEDYDATA:syslog_message}" }
add_field => [ "received_at", "%{@timestamp}" ]
add_field => [ "received_from", "%{host}" ]
}
date {
match => [ "syslog_timestamp", "MMM d HH:mm:ss", "MMM dd HH:mm:ss" ]
}
}
}
output {
if [type] == "syslog" {
elasticsearch { hosts => ["us5lpvinfelk001:9200"] }
stdout { codec => rubydebug }
}
}