排查容器问题时,很多人第一反应都是看日志。笔者也常用 docker logs -f xxx,但如果容器日志很多,这个命令可能会从很早的内容开始刷屏,等很久才看到真正关心的部分。
01 | 从最近 200 行开始看
假设容器名字是 xxx,最常见的实时跟踪命令是:
bash
docker logs -f xxx
如果日志量不大,这样用没问题。但当日志很多时,更实用的方式是配合 --tail:
bash
docker logs -f --tail 200 xxx
这个命令的含义是:先显示最后 200 行日志,然后继续实时跟踪新输出的日志。
这样既能看到最近上下文,又不会被大量历史日志淹没。
02 | 加上时间戳更清晰
排查问题时,只看日志内容有时不够,还需要知道每条日志发生的时间。
常用组合可以加上 -t:
bash
docker logs -f --tail 200 -t xxx
这样输出会带时间戳,定位问题发生时间会更直观。
03 | 按时间范围查看日志
如果不想按行数看,而是想看最近一段时间的日志,可以使用 --since。
查看最近 30 分钟日志:
bash
docker logs --since 30m -f xxx
查看最近 1 小时日志:
bash
docker logs --since 1h -f xxx
这种方式适合已经知道问题大概发生在最近一段时间,只想过滤出相关日志的场景。
简单记法是:按行数用 --tail,按时间用 --since,需要持续跟踪就加 -f,需要时间戳就加 -t。
关注我,和AI一起成长~