1. 程式人生 > >centos7下安裝docker(18docker日誌---docker logs)

centos7下安裝docker(18docker日誌---docker logs)

生產環境 參數 錯誤 out 日誌 圖片 打印 沒有 httpd

在微服務架構中,由於容器的數量眾多以及快速變化的特性使得記錄日誌和監控變得越來越重要,考慮到容器的短暫和不固定周期,當我們需要排查問題的時候容器可能不在了。因此,一套集中式的日誌管理系統是生產環境中不可或缺的組成部分

docker logs

docker 自帶的日誌功能

對於一個運行的容器,docker 會將日誌發送到容器的標準輸出(STDOUT)和標準錯誤設備(STDERR),stdout和stderr實際上就是容器的控制臺終端

例如:

當我們用docker run -p 80:80 httpd運行容器的時候,日誌會直接打印在當前的終端

技術分享圖片

當我們加-d的參數以後臺方式運行的時候,我們就看不到日誌的輸出了

技術分享圖片

這種情況下要查看日誌有兩種方法:

1.docker attach到該容器

2.用docker logs命令查看日誌

docker attach

技術分享圖片

當我們attch到一個容器的時候沒有看到任何輸出,原因是沒有產生新的日誌

當容器被訪問的時候會產生新的日誌

attach在實際使用中並不是很方便,這個在我們之前學習進入容器的命令的時候討論過:

1.只能看到attach之後的日誌,之前的日誌不可見

2.退出attach非常麻煩,要麽就是重新開一個終端,要麽就是ctrl+c,但是這種方法會將容器殺死

docker logs

技術分享圖片

docker logs能夠打印出自容器啟動以來完整的日誌,並且-f參數可以繼續持續打印,效果和tail -f一樣

centos7下安裝docker(18docker日誌---docker logs)