久久青草精品A片狠狠,日韩欧美视频一区二区,亚洲国码AV日韩,国产精品黄在

Docker容器日志路徑及如何收集

2018-04-02 23:25:28 7161

日志分兩類,一類是 Docker 引擎日志;另一類是 容器日志。

Docker 引擎日志

Docker 引擎日志 一般是交給了 Upstart(Ubuntu 14.04) 或者 systemd (CentOS 7, Ubuntu 16.04)。前者一般位于 /var/log/upstart/docker.log 下,后者一般通過 jounarlctl -u docker 來讀取。不同系統(tǒng)的位置都不一樣,SO上有人總結(jié)了一份列表,我修正了一下,可以參考:

系統(tǒng)日志位置 
Ubuntu(14.04)/var/log/upstart/docker.log
Ubuntu(16.04)journalctl -u docker.service
CentOS 7/RHEL 7/Fedorajournalctl -u docker.service
CoreOSjournalctl -u docker.service
OpenSUSEjournalctl -u docker.service
OSX~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/log/d?ocker.log
Debian GNU/Linux 7/var/log/daemon.log
Debian GNU/Linux 8journalctl -u docker.service
Boot2Docker/var/log/docker.log

容器日志

容器的日志 則可以通過 docker logs 命令來訪問,而且可以像 tail -f 一樣,使用 docker logs -f 來實時查看。如果使用 Docker Compose,則可以通過 docker-compose logs <服務(wù)名> 來查看。

如果深究其日志位置,每個容器的日志默認都會以 json-file 的格式存儲于 /var/lib/docker/containers/<容器id>/<容器id>-json.log 下,不過并不建議去這里直接讀取內(nèi)容,因為 Docker 提供了更完善地日志收集方式 - Docker 日志收集驅(qū)動。

關(guān)于日志收集,Docker 內(nèi)置了很多日志驅(qū)動,可以通過類似于 fluentd, syslog 這類服務(wù)收集日志。無論是 Docker 引擎,還是容器,都可以使用日志驅(qū)動。比如,如果打算用 fluentd 收集某個容器日志,可以這樣啟動容器:

$ docker run -d \
--log-driver=fluentd \
--log-opt fluentd-address=10.2.3.4:24224 \
--log-opt tag="docker.{{.Name}}" \
nginx

其中 10.2.3.4:24224 是 fluentd 服務(wù)地址,實際環(huán)境中應(yīng)該換成真實的地址


提交成功!非常感謝您的反饋,我們會繼續(xù)努力做到更好!

這條文檔是否有幫助解決問題?

非常抱歉未能幫助到您。為了給您提供更好的服務(wù),我們很需要您進一步的反饋信息:

在文檔使用中是否遇到以下問題: