docker容器日志查看常用命令及線上日志排查
基本查看日志命令
- 查看最新日志:
docker logs <container_name_or_id> docker logs imc-system
將 <container_name_or_id> 替換為容器的名稱(chēng)或容器ID。這將顯示容器的最新日志輸出。
- 實(shí)時(shí)查看日志:
docker logs -f <container_name_or_id> docker logs -f imc-system
使用 -f 參數(shù),你可以實(shí)時(shí)跟蹤容器的日志輸出,類(lèi)似于 tail -f 命令。
- 查看指定行數(shù)的日志:
docker logs --tail <number_of_lines> <container_name_or_id> docker logs --tail 50 imc-system
使用 --tail 參數(shù),可以指定查看的日志行數(shù)。將 <number_of_lines> 替換為你希望查看的行數(shù)。
- 查看時(shí)間戳:
docker logs --timestamps <container_name_or_id> docker logs --timestamps imc-system
使用 --timestamps 參數(shù),可以在日志中顯示時(shí)間戳。
- 查看之前的日志:
docker logs --since <timestamp> <container_name_or_id> docker logs --since '2023-07-20T06:00:00' imc-system
使用 --since 參數(shù),可以查看指定時(shí)間之后的日志。將 <timestamp> 替換為時(shí)間戳,例如 YYYY-MM-DDTHH:MM:SS。
- 查看最近的日志:
docker logs --until <timestamp> <container_name_or_id> docker logs --until '2023-07-20T06:00:00' imc-system
對(duì)于最近的日志,使用 --until 參數(shù),可以查看指定時(shí)間之前的日志。將 <timestamp> 替換為時(shí)間戳,例如 YYYY-MM-DDTHH:MM:SS。
請(qǐng)注意,<container_name_or_id> 可以是容器的名稱(chēng)或者容器的唯一ID。你可以使用 docker ps 命令來(lái)獲取運(yùn)行中容器的名稱(chēng)或ID。
線上日志排查
在線上排除 Docker 日志時(shí),常用的邏輯是根據(jù)日志內(nèi)容或其他標(biāo)識(shí)進(jìn)行篩選和過(guò)濾,以便只關(guān)注特定關(guān)鍵信息,降低噪音和冗余。以下是一些常用的邏輯和方法:
根據(jù)關(guān)鍵詞過(guò)濾: 使用
grep命令或其他文本搜索工具,根據(jù)關(guān)鍵詞過(guò)濾日志,只顯示包含特定關(guān)鍵詞的日志行。例如:docker logs <container_name_or_id> | grep "ERROR"
這將只顯示包含 “ERROR” 關(guān)鍵詞的日志行。
時(shí)間范圍過(guò)濾: 使用
--since和--until參數(shù),可以根據(jù)時(shí)間范圍過(guò)濾日志,只查看特定時(shí)間段內(nèi)的日志。例如:docker logs --since "2023-07-01T00:00:00" --until "2023-07-20T23:59:59" <container_name_or_id>
這將顯示從 2023 年 7 月 1 日到 2023 年 7 月 20 日的日志。
最近N行日志: 使用
--tail參數(shù),可以只查看最近的 N 行日志。例如:docker logs --tail 100 <container_name_or_id>
這將顯示容器最近的100行日志。
日志輸出至文件: 將日志輸出到文件,以便后續(xù)離線查看和分析??梢允褂弥囟ㄏ蚍?hào)
>將日志輸出到文件,例如:docker logs <container_name_or_id> > container_logs.txt
實(shí)時(shí)日志監(jiān)控: 使用
-f參數(shù)實(shí)時(shí)監(jiān)控日志輸出,類(lèi)似于tail -f命令。例如:docker logs -f <container_name_or_id>
使用日志驅(qū)動(dòng): Docker 支持多種日志驅(qū)動(dòng),可以根據(jù)需要選擇適合的驅(qū)動(dòng),例如
json-file、syslog、fluentd等。這些驅(qū)動(dòng)可以幫助你將日志傳輸?shù)街醒肴罩臼占到y(tǒng),方便集中管理和分析。結(jié)合日志管理工具: 使用日志管理工具,如 ELK (Elasticsearch, Logstash, Kibana) 或 Fluentd + Elasticsearch + Kibana,可以實(shí)現(xiàn)更高級(jí)的日志收集、存儲(chǔ)、搜索和可視化功能。
請(qǐng)根據(jù)你的具體需求和場(chǎng)景選擇合適的方法,確保對(duì)關(guān)鍵信息進(jìn)行及時(shí)監(jiān)控和分析,同時(shí)減少不必要的日志記錄和輸出,以免影響性能和造成存儲(chǔ)浪費(fèi)。
總結(jié)
到此這篇關(guān)于docker容器日志查看常用命令及線上日志排查的文章就介紹到這了,更多相關(guān)docker容器日志查看命令內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
docker搭建es集群實(shí)現(xiàn)過(guò)程詳解
這篇文章主要為大家介紹了docker搭建es集群實(shí)現(xiàn)過(guò)程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01
Docker部署Django+Mysql+Redis+Gunicorn+Nginx的實(shí)現(xiàn)
這篇文章主要介紹了Docker 部署 Django+Mysql+Redis+Gunicorn+Nginx,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11
手工制作docker鏡像-包含多個(gè)服務(wù)ssh+nginx
這篇文章主要介紹了手工制作docker鏡像-包含多個(gè)服務(wù)ssh+nginx,需要的朋友可以參考下2024-07-07
Docker高級(jí)教程之智能添加與修改防火墻規(guī)則
這篇文章主要介紹了Docker高級(jí)教程之智能添加與修改防火墻規(guī)則,需要的朋友可以參考下2017-01-01
基于Docker的Mysql主備搭建的實(shí)現(xiàn)步驟
本文主要介紹了基于Docker的Mysql主備搭建的實(shí)現(xiàn)步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01
如何構(gòu)建本地Docker鏡像倉(cāng)庫(kù)
這篇文章主要介紹了如何構(gòu)建本地Docker鏡像倉(cāng)庫(kù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-06-06
docker-compose網(wǎng)絡(luò)配置-?IP?主機(jī)名?hosts配置方式
這篇文章主要介紹了docker-compose網(wǎng)絡(luò)配置-?IP?主機(jī)名?hosts配置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01

