docker service logsEstimated reading time: 4 minutes
Edge only: This is the CLI reference for Docker CE Edge versions. Some of these options may not be available to Docker CE stable or Docker EE. You can view the stable version of this CLI reference or learn about Docker CE Edge.
Fetch the logs of a service or task
The client and daemon API must both be at least
to use this command. Use the
docker version command on the client to check
your client and daemon API versions.
docker service logs [OPTIONS] SERVICE|TASK
Show extra details provided to logs
||Follow log output|
||Do not map IDs to Names in output|
||Do not include task IDs in output|
||Do not truncate output|
Do not neatly format logs
||Show logs since timestamp (e.g. 2013-01-02T13:23:37) or relative (e.g. 42m for 42 minutes)|
||Number of lines to show from the end of the logs|
|docker service||Manage services|
|docker service create||Create a new service|
|docker service inspect||Display detailed information on one or more services|
|docker service logs||Fetch the logs of a service or task|
|docker service ls||List services|
|docker service ps||List the tasks of one or more services|
|docker service rm||Remove one or more services|
|docker service rollback||Revert changes to a service’s configuration|
|docker service scale||Scale one or multiple replicated services|
|docker service update||Update a service|
docker service logs command batch-retrieves logs present at the time of execution.
docker service logs command can be used with either the name or ID of a
service, or with the ID of a task. If a service is passed, it will display logs
for all of the containers in that service. If a task is passed, it will only
display logs from that particular task.
Note: This command is only functional for services that are started with the
For more information about selecting and configuring logging drivers, refer to Configure logging drivers.
docker service logs --follow command will continue streaming the new output from
Passing a negative number or a non-integer to
--tail is invalid and the
value is set to
all in that case.
docker service logs --timestamps command will add an RFC3339Nano timestamp
, for example
2014-09-16T06:17:46.000000000Z, to each
log entry. To ensure that the timestamps are aligned the
nano-second part of the timestamp will be padded with zero when necessary.
docker service logs --details command will add on extra attributes, such as
environment variables and labels, provided to
--log-opt when creating the
--since option shows only the service logs generated after
a given date. You can specify the date as an RFC 3339 date, a UNIX
timestamp, or a Go duration string (e.g.
3h). Besides RFC3339 date
format you may also use RFC3339Nano,
2006-01-02. The local
timezone on the client will be used if you do not provide either a
Z or a
+-00:00 timezone offset at the end of the timestamp. When providing Unix
timestamps enter seconds[.nanoseconds], where seconds is the number of seconds
that have elapsed since January 1, 1970 (midnight UTC/GMT), not counting leap
seconds (aka Unix epoch or Unix time), and the optional .nanoseconds field is a
fraction of a second no more than nine digits long. You can combine the
--since option with either or both of the