I wanted to know how this would work with an http input. It is very simple to configure. On the logstash side I just have
input { http { host => "127.4.31.9" port => 4000 } }
output { stdout { codec => rubydebug } }
and I can send a directory full of files to it using
for F in /etc/logstash/t.httpInput/data/*.xml ; do
echo Processing $F
curl -H 'content-type: application/xml' -XPUT 'http://127.4.31.9:4000/' -d "@$F"
echo ''
done
I though I was going to have to configure a multiline code, but no, each PUT results in a single event.