I want to send syslog files to my logstash, but not sure how to incorporate it with my beats input. When I have tried adding my beats stop working. Below is my logstash file.
I want to know how to get my beats to still work and add the syslog portion. I'm having trouble with the input and output. I have tried the input as so.
My two cents:
I tried using syslog input on Logstash many versions ago. Logstash's syslog input didn't scale, so for syslog input, I use syslog-ng which is relatively simple and scales a lot better than logstash in terms of events per second. Syslog-ng drops to a flat file. A separate logstash pipeline reads the flat file. Thus, my suggestion:
simple syslog-ng setup to drop to flat files. (It can even drop to a json file.)
pipelines.yml to separate beats input and flat file input in logstash processes.
One of the benefits is that you can see the data that you'll need to parse in flat file. There are plenty of log types that send "type" as a field that will mess with your if [type] logic.
@sampas Let me see if I understand. Set up a Syslog application to gather all the logs. Then have Filebeat of something ingest them into Logstash? Does Syslog-ng work on Windows?
Syslog-ng is very good at collecting traditional events sent via the syslog protocol, but there's no windows version. I consume the flat files that syslog-ng writes with logstash, and it scales well. You could also consume the flat files with beats. Part of the value of flat files is you get to see what you're trying to parse, e.g. what format the timestamps are in, field layout, etc.
Running the two listeners in separate logstash pipelines (controlled via pipeline.yml) will also help keep the logic separate. You can also have logstash output the syslog to a flat file just so you can see it.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.