When comparing Fluentd vs Flume, the Slant community recommends Fluentd for most people. In the question“What are the best log management, aggregation & monitoring tools?” Fluentd is ranked 4th while Flume is ranked 14th. The most important reason people chose Fluentd is:
Gives structure to unstructured logs.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Logs everything in JSON
Gives structure to unstructured logs.
Pro Logs stored to FS buffer while network is down
Logs aren't lost due to network issues.
Pro In-stream processing
With a list of 150+ plugins, Fluentd can perform all kinds of in-stream data processing tasks.
Pro Huge plugin ecosystem
Fluentd has a plugin ecosystem that has resulted in developers creating over 150 plugins for the service.
Pro Prioritizes simplicity and robustness
For example, inputs and outputs have built-in support for buffering, load-balancing, timeouts and retries so to be able to deliver data reliably.
Pro Free and open source
Licensed under Apache 2.0.
Pro Routing based on tags
Pro Exponential retry wait
Pro Copy to multiple storages
Pro Based on CRuby
Pro Flume is transactional (no lost when duplicating streams), and can be backuped by Kafka
Pro Hadoop integration
Flume was created to efficiently move log data to Apache Hadoop's HDFS.
Pro Free and open source
Licensed under Apache 2.0.
Cons
Con Difficult to setup
Requires a significant time investment to get up and running.
Con Hard to manage
Since Flume cannot do multiplex connections, it's extremely hard to manage. It's essentially one socket per log type.