docker service logs

描述获取服务或任务的日志
用法docker service logs [OPTIONS] SERVICE|TASK

Swarm 此命令适用于 Swarm 协调器。

描述

docker service logs 命令会批量检索执行时存在的日志。

注意

这是一条集群管理命令,必须在 Swarm 管理器节点上执行。要了解管理器和工作节点,请参阅文档中的 Swarm 模式部分

docker service logs 命令可用于指定服务名称或 ID,也可用于指定任务 ID。如果传入服务,它将显示该服务中所有容器的日志。如果传入任务,它将只显示该特定任务的日志。

注意

此命令仅适用于使用 json-filejournald 日志驱动程序启动的服务。

有关选择和配置日志驱动程序的更多信息,请参阅配置日志驱动程序

docker service logs --follow 命令将持续流式传输服务 STDOUTSTDERR 的新输出。

--tail 传递负数或非整数值无效,在这种情况下该值将设置为 all

docker service logs --timestamps 命令将为每个日志条目添加一个 RFC3339Nano 时间戳,例如 2014-09-16T06:17:46.000000000Z。为确保时间戳对齐,必要时将用零填充时间戳的纳秒部分。

docker service logs --details 命令将添加在创建服务时通过 --log-opt 提供的额外属性,例如环境变量和标签。

--since 选项仅显示指定日期后生成的服务日志。可以将日期指定为 RFC 3339 格式日期、UNIX 时间戳或 Go duration 字符串(例如 1m30s3h)。除了 RFC3339 日期格式,您还可以使用 RFC3339Nano、2006-01-02T15:04:052006-01-02T15:04:05.9999999992006-01-02T07:002006-01-02。如果在时间戳末尾未提供 Z+-00:00 时区偏移量,将使用客户端的本地时区。提供 Unix 时间戳时,输入 seconds[.nanoseconds],其中 seconds 是自 1970 年 1 月 1 日(UTC/GMT 午夜)以来经过的秒数(不计闰秒,也称为 Unix 纪元或 Unix 时间),可选的 .nanoseconds 字段是秒的小数部分,不超过九位。可以将 --since 选项与 --follow 和/或 --tail 选项结合使用。

选项

选项默认值描述
--detailsAPI 1.30+ 显示日志中提供的额外详细信息
-f, --follow跟随日志输出
--no-resolve输出中不将 ID 映射到名称
--no-task-ids输出中不包含任务 ID
--no-trunc不截断输出
--rawAPI 1.30+ 不以整洁格式输出日志
--since显示指定时间戳(例如 2013-01-02T13:23:37Z)或相对时间(例如 42m 表示 42 分钟)后的日志
-n, --tailall显示日志末尾的行数
-t, --timestamps显示时间戳