Nearly every application generates logs of some sort. They might track usage such as web server access logs or they may only show start up or error messages. In every case, logs have their use and not being able to see them can be a serious problem.
Logging in Docker is a strange beast. Containers are, by design, transitory. They are designed to be created and destroyed often. This becomes a problem for application logs because log files are deleted right along with a container.
The solution to the problem is two-fold. First, Docker provides a plugin system for logging, which takes everything an application prints to standard out or standard error and logs it somewhere. Second, a somewhere is needed for those logs to go to. In other words, a log aggregation server is needed.