docker container logs
描述 | 获取容器的日志 |
---|---|
用法 | docker container logs [OPTIONS] CONTAINER |
别名 | docker logs |
描述
docker logs
命令批量检索执行时存在的日志。
有关选择和配置日志驱动程序的更多信息,请参阅配置日志驱动程序。
docker logs --follow
命令将继续流式传输容器 STDOUT
和 STDERR
的新输出。
向 --tail
传递负数或非整数无效,在这种情况下该值将设置为 all
。
docker logs --timestamps
命令将向每个日志条目添加一个 RFC3339Nano 时间戳 ,例如 2014-09-16T06:17:46.000000000Z
。为确保时间戳对齐,如有必要,时间戳的纳秒部分将用零填充。
docker logs --details
命令将添加额外属性,例如在创建容器时提供给 --log-opt
的环境变量和标签。
--since
选项仅显示在给定日期之后生成的容器日志。可以将日期指定为 RFC 3339 日期、UNIX 时间戳或 Go duration 字符串(例如 1m30s
、3h
)。除了 RFC3339 日期格式,您还可以使用 RFC3339Nano、2006-01-02T15:04:05
、2006-01-02T15:04:05.999999999
、2006-01-02T07:00
和 2006-01-02
。如果未在时间戳末尾提供 Z
或 +-00:00
时区偏移量,则将使用客户端的本地时区。提供 Unix 时间戳时,输入秒[.纳秒],其中秒是自 1970 年 1 月 1 日(UTC/GMT 午夜)以来经过的秒数,不包括闰秒(也称为 Unix 纪元或 Unix 时间),可选的 .纳秒字段是小于等于九位数的秒分数。可以将 --since
选项与 --follow
或 --tail
选项中的一个或两个结合使用。
选项
选项 | 默认 | 描述 |
---|---|---|
--details | 显示提供给日志的额外详细信息 | |
-f, --follow | 跟踪日志输出 | |
--since | 显示指定时间戳(例如 2013-01-02T13:23:37Z )或相对时间(例如 42m 表示 42 分钟)之后的日志 | |
-n, --tail | all | 从日志末尾显示的行数 |
-t, --timestamps | 显示时间戳 | |
--until | API 1.35+ 显示指定时间戳(例如 2013-01-02T13:23:37Z )或相对时间(例如 42m 表示 42 分钟)之前的日志 |
示例
检索直到特定时间点的日志 (--until)
要检索特定时间点之前的日志,运行
$ docker run --name test -d busybox sh -c "while true; do $(echo date); sleep 1; done"
$ date
Tue 14 Nov 2017 16:40:00 CET
$ docker logs -f --until=2s test
Tue 14 Nov 2017 16:40:00 CET
Tue 14 Nov 2017 16:40:01 CET
Tue 14 Nov 2017 16:40:02 CET