When comparing Logstash vs Graylog2, the Slant community recommends Logstash for most people. In the question“What are the best log management, aggregation & monitoring tools?” Logstash is ranked 1st while Graylog2 is ranked 7th. The most important reason people chose Logstash is:
There is an [official Docker image for Logstash](https://hub.docker.com/_/logstash/) which means it'll likely be well supported and maintained for a while.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Has an official Docker image
There is an official Docker image for Logstash which means it'll likely be well supported and maintained for a while.
Pro Free and open source
Logstash is licensed under Apache 2.0.
Pro Extended functionality via plugins
There is a rich repository of plugins available categorized as inputs, codecs, filters and outputs.
Pro Easy installation
No dependencies, it's a single .jar file. It's written in JRuby and only requires Java to be installed.
Pro Great integration with other Elastic products
Logstash is commonly used as part of ELK stack, that also includes ElasticSearch (a clustered search and storage system) and Kibana (a web frontend for ElasticSearch).
Pro Emphasizes flexibility and interoperability
Logstash is built to fit in your stack.
Pro Filters are code
Filters, also known as "groks", are used to query a log stream. They are provided in a configuration file, that also configures source stream and output streams. Since they are stored in a file, they can be under version control and changes can be reviewed (for example, as part of a Git pull request).
Pro Managed cloud version avaible
There is a cloud based managed version if you are prepared to pay a few bucks.
Pro Good performance
You can run on mediocre system without problems
Pro Free and open source
Graylog2 is licensed under GNU GPL v3.
Pro Easy setup
Graylog2 can be quickly installed on any Linux machine running Java 7 via an executable that allows installing and configuring remote dependencies and graylog2 itself via a web interface.
Pro Real-time
Information and statistics displayed update in real time.
Pro Great interface
Easy to overview, intuitive and full of explainers.
Pro Little maintenance
Pro Streams allow identifying events in real-time and perform actions
Stream allow filtering events in real time and perform action such as issue alerts or forward messages.
Pro Server-side functionality can be extended via plug-ins
Pro Works well with just about any type of logging
Cons
Con Does not come bundled with a UI
Logstash does not come bundled with a UI, to visualize data you need to use a tool like Kibana or grafana as the UI.
Con Difficult to maintain
You have to host and maintain it yourself. This can be a challenge as log volume increases.
Con Filters can be hard to write
Simple filters seem easy enough with a pattern like %{SYNTAX:SEMANTIC}
but often RegEx is required. RegEx is a powerful backdoor but it is also dense and hard to learn.
Con No native alerts
Logstash does not have any native alerting capabilities.
Con Limited logging protocols support
Graylog2 only has support for syslog and GELF.
Con Self hosted. Difficult to maintain.
Maintenance is very difficult because of the high volume nature of logs.
Con Slow
Takes multiple servers even for smaller deployments
Con Interface is hard to use
The interface is hard to use, loaded with data, and difficult to understand.