#Docker log centralizer
This a end-to-end log centralizer powered by the ELK stask.
##Embedded containers
1. [Filebeat](https://www.elastic.co/products/beats/filebeat) - An agent to poll logs
2. [Logstash-Forwarder](https://github.com/elastic/logstash-forwarder) - An other agent to poll logs
3. [Logstash](https://www.elastic.co/products/logstash) - The collector / analyzer / parser solution
4. [Kafka](http://kafka.apache.org) - The queueing solution for logs
5. [ZooKeeper](https://zookeeper.apache.org/) - The cluster on which Kafka is running
6. [ElasticSearch](https://www.elastic.co/products/elasticsearch) - The indexing engine
7. [Kibana](https://www.elastic.co/products/kibana) - The visualization / dashboard tool for ElasticSearch
8. [Kafka Manager](https://github.com/yahoo/kafka-manager) - The Kafka cluster web manager
9. [Apache log generator](https://github.com/Febbweiss/docker-apache-log-generator) - A container generating fake apache logs
10. [Random log generator](https://hub.docker.com/r/davidmccormick/random_log_generator) - A container genrating text logs (Star Wars quotes)
##How it works
There are 2 agent types :
- Filebeat
- Logstash-Forward
These agents push logs (from the apache and random generators) to a Logstasth shipper filling a Kafka queue (one type of log for one topic).
A Logstash indexer polls the Kafka topics indexing logs into a ElasticSearch.
A short schema :
```
Agent -> Logstach shipper -> Kafka <- Logstash indexer -> ElasticSearch
```
##Tools access
Kibana is available at http://localhost:5601.
Kafka Manager is available at http://localhost:9000
Fork me on GitHub