We're currently building a centralized logging platform for our multitude of services. The plan is to install a scribe client on every application server, which will forward the logs to a central scribe server.
The central scribe server is currently logging all the aggregated logs to disk. But now we want to index them on ElasticSearch for visualization.
My exact question is: What's the best (most robust, fault-tolerant, less computationally expensive & memory efficient) way to forward logs from a central scribe server's output to ElasticSearch for indexing?
Few ideas worth exploring:
- Scribe Server -> File -> Logstash -> ElasticSearch
- Scribe Server -> File -> [X] -> RabbitMQ -> Logstash -> ElasticSearch
- Scribe Server -> File -> [Y] -> ElasticSearch
- Scriber Server -> [Z] -> Elastic Search
Any good options for X, Y or Z? Which one's the best approach? Please suggest.
Thanks.