请直接看原文:
原文链接:Docker logs 命令------查看docker容器日志-CSDN博客
用法:
docker logs [OPTIONS] CONTAINER
|-----------------------|-------|---------------------------------------|
| 名称,简写 | 默认 | 描述 |
| --details
| | 显示更多的信息 |
| --follow
, -f
| | 跟踪日志输出 |
| --since
| | 显示自某个timestamp之后的日志,或相对时间,如42m(即42分钟) |
| --tail
, -n
| all
| 从日志末尾显示的行数,默认为all |
| --timestamps
, -t
| | 显示时间戳 |
| --until
| | 显示自某个timestamp之前的日志,或相对时间,如42m(即42分钟) |
例子:
查看指定时间后的日志,只显示最后100行:
docker logs -f -t --since="2018-02-08" --tail=100 CONTAINER_ID
查看最近30分钟的日志:
docker logs --since 30m CONTAINER_ID
查看某时间之后的日志:
docker logs -t --since="2021-08-18T11:46:37" CONTAINER_ID
查看某时间之后最新的100条日志:
docker logs -t --since="2021-08-18T11:46:37" --tail=100 CONTAINER_ID
查看某时间段日志:
docker logs -t --since="2021-08-18T11:46:37" --until "2021-08-18T11:47:37" CONTAINER_ID
使用 grep 过滤日志-1:
docker logs CONTAINER_ID | grep 'error'
使用 grep 过滤日志-2:
docker logs CONTAINER_ID | grep -10 'error' # 打印匹配行的前后10行
docker logs CONTAINER_ID | grep -C 10 'error' # 打印匹配行的前后10行
docker logs CONTAINER_ID | grep -A 10 -B 10 'error' # 打印匹配行的前后10行
docker logs CONTAINER_ID | grep -A 10 'error' # 打印匹配行的后10行
docker logs CONTAINER_ID | grep -B 10 'error' # 打印匹配行的前10行
把日志写入文件:
docker logs -t CONTAINER_ID | grep 'error' >> logs_error.txt
参考: