How to combine logs for all docker containers in meso
This is a broad question, but I suggest you set up Elastic Search, Logstash, Kibana stack (ELK)
https://www.elastic.co/products/elasticsearch
https://www.elastic.co/products/logstash
https://www.elastic.co/products/kibana
Then on each of your containers, you can run logstash forwarder / shipper to send the logs to your logstash interface.
The logs are saved in Elastic Search and then you search for them using Kibana or Elastic Search API
Hope it helps.
source to share
We also use Docker + Mesos and send all logs to the logarithmic analytics service (this is the service I work for for suggestions, http://logz.io ). There are several ways to achieve this:
- Have a log sender agent in every docker - an agent like rsyslog, nxlog, logstash, logstash-forwarder - this agent sends data to a central logging solution
- Build a Docker that is running a sender agent (like rsyslog, nxlog, logstash, logstash-forwarder) and this agent reads the logs from all dockers on each machine and sends them to a central location - this is the path we are taking
source to share
I am also doing Docker + Mesos + Marathon work, so I think I will have the same doubt as you do.
I don't know if there is any other solution of my own. But there a blog at elastic.io talked about how they decided to solve this problem.
Here's the link - Aggregating Logs for Docker Containers in Mesos / Marathon Cluster
source to share