溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何配置日志驅(qū)動

發(fā)布時間:2021-10-12 16:01:36 來源:億速云 閱讀:154 作者:iii 欄目:編程語言

本篇內(nèi)容介紹了“如何配置日志驅(qū)動”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!

日志驅(qū)動(Logging Driver)

在 Docker 中,由多種方式存儲應(yīng)用程序日志,這些存儲日志的方式被稱為“日志驅(qū)動(Logging Driver)”。

它具有多種類型日志驅(qū)動,例如 none、local、json-file 等等,還可以實現(xiàn)自己的日志驅(qū)動。詳細內(nèi)容可參考官方「Supported logging drivers」與「Use a logging driver plugin」文檔。

注意事項

本筆記內(nèi)容是對官方 19.03/Configure logging drivers 文檔的學(xué)習(xí)與整理,詳細內(nèi)容請參考官方文檔。

配置默認(rèn)日志驅(qū)動

默認(rèn)為 json-file 日志驅(qū)動,但是可以修改。

配置全局日志驅(qū)動

修改 /etc/docker/daemon.json 配置文件(示例):

{
  "log-driver": "syslog",
  "log-opts": {
    "max-size": "500m",
    "max-file": "3",
    "labels": "production_status",
    "env": "os,customer"
  }
}

log-opts 可用屬性取決于日志驅(qū)動類型(log-driver),如果日志驅(qū)動支持其他選項,則可以進行添加。

配置容器日志驅(qū)動

也可以為特定容器配置日志驅(qū)動。在啟動容器時,指定 --log-driver 選項:

docker run -it --log-driver none alpine ash

配置日志分發(fā)模型

日志分發(fā)由兩種模型:(1)阻塞;(2)非阻塞

“非阻塞”用于防止日志后端壓力而導(dǎo)致應(yīng)用程序崩潰。詳細內(nèi)容可參考官方文檔。

使用日志標(biāo)簽

可以使用-e或--label選項指定日志標(biāo)簽,在生成的日志中會附加某些標(biāo)簽。詳細內(nèi)容可參考官方文檔。

日志驅(qū)動限制

企業(yè)版支持“雙重日志”,即不管使用哪種日志驅(qū)動,都可以使用 docker logs 命令查看,但是社區(qū)版目前(01/08/2020)只支持查看 local、json-file、journald 這三種日志驅(qū)動,因此“我們”通常也只需要關(guān)注這三中。

讀取輪轉(zhuǎn)日志需要消耗磁盤與 CPU 使用

最大日志文件大小由Docker數(shù)據(jù)目錄大小決定

默認(rèn)日志驅(qū)動、配置,以及需要我們關(guān)注的問題

服務(wù)進程(Dokcer)的日志保存在哪里?

如果使用 systemd 運行 Docker 服務(wù),則日志由 systemd-journald 管理。使用 journalctl -u docker.service 查看 Docker 日志。

默認(rèn)的日志驅(qū)動是什么?

不同版本的 Docker,默認(rèn)日志驅(qū)動不同。根據(jù)官方文檔 19.03/Configure the default logging driver 所述:The default logging driver is json-file。

執(zhí)行命令 docker info --format "{{.LoggingDriver}}" 查看當(dāng)前默認(rèn)的日志驅(qū)動

執(zhí)行命令 docker inspect -f '{{.HostConfig.LogConfig.Type}}' <CONTAINER> 查看容器的日志驅(qū)動。

容器的日志保存在哪里?

/var/lib/docker/containers/<container_id>/<container_id>-json.log

容器的日志是否會自動輪轉(zhuǎn),并釋放空間?

如果容器使用 json-file 日志驅(qū)動,根據(jù)官方 19.03/JSON File logging driver 文檔對 max-size 的描述,容器的日志不會論轉(zhuǎn),會一直增長。

通過在 Docker 18.09.1 測試,也是如此,日志文件 <container_id>-json.log 會不斷增長,因此我們需要調(diào)整日志驅(qū)動參數(shù)。

“如何配置日志驅(qū)動”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI