modifying docker --since and --until to support nanoseconds and time zones

Signed-off-by: Mike Brown <brownwm@us.ibm.com>
This commit is contained in:
Mike Brown 2015-10-29 12:51:36 -05:00 committed by Tibor Vass
parent 562c2df97d
commit 0eb79491dd
4 changed files with 53 additions and 20 deletions

View File

@ -27,10 +27,18 @@ and Docker images will report:
delete, import, pull, push, tag, untag delete, import, pull, push, tag, untag
The `--since` and `--until` parameters can be Unix timestamps, RFC3339 The `--since` and `--until` parameters can be Unix timestamps, date formated
dates or Go duration strings (e.g. `10m`, `1h30m`) computed relative to timestamps, or Go duration strings (e.g. `10m`, `1h30m`) computed
client machines time. If you do not provide the --since option, the command relative to the client machines time. If you do not provide the --since option,
returns only new and/or live events. the command returns only new and/or live events. Supported formats for date
formated time stamps include RFC3339Nano, RFC3339, `2006-01-02T15:04:05`,
`2006-01-02T15:04:05.999999999`, `2006-01-02Z07:00`, and `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.
## Filtering ## Filtering

View File

@ -31,13 +31,20 @@ the container's `STDOUT` and `STDERR`.
Passing a negative number or a non-integer to `--tail` is invalid and the Passing a negative number or a non-integer to `--tail` is invalid and the
value is set to `all` in that case. value is set to `all` in that case.
The `docker logs --timestamp` commands will add an [RFC3339Nano timestamp](https://golang.org/pkg/time/#pkg-constants) The `docker logs --timestamps` command will add an [RFC3339Nano timestamp](https://golang.org/pkg/time/#pkg-constants)
, for example `2014-09-16T06:17:46.000000000Z`, to each , for example `2014-09-16T06:17:46.000000000Z`, to each
log entry. To ensure that the timestamps for are aligned the log entry. To ensure that the timestamps are aligned the
nano-second part of the timestamp will be padded with zero when necessary. nano-second part of the timestamp will be padded with zero when necessary.
The `--since` option shows only the container logs generated after The `--since` option shows only the container logs generated after
a given date. You can specify the date as an RFC 3339 date, a UNIX a given date. You can specify the date as an RFC 3339 date, a UNIX
timestamp, or a Go duration string (e.g. `1m30s`, `3h`). Docker computes timestamp, or a Go duration string (e.g. `1m30s`, `3h`). Besides RFC3339 date
the date relative to the client machines time. You can combine format you may also use RFC3339Nano, `2006-01-02T15:04:05`,
the `--since` option with either or both of the `--follow` or `--tail` options. `2006-01-02T15:04:05.999999999`, `2006-01-02Z07:00`, and `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 `--follow` or `--tail` options.

View File

@ -37,9 +37,18 @@ and Docker images will report:
**--until**="" **--until**=""
Stream events until this timestamp Stream events until this timestamp
You can specify `--since` and `--until` parameters as an RFC 3339 date, The `--since` and `--until` parameters can be Unix timestamps, date formated
a UNIX timestamp, or a Go duration string (e.g. `1m30s`, `3h`). Docker computes timestamps, or Go duration strings (e.g. `10m`, `1h30m`) computed
the date relative to the client machines time. relative to the client machines time. If you do not provide the --since option,
the command returns only new and/or live events. Supported formats for date
formated time stamps include RFC3339Nano, RFC3339, `2006-01-02T15:04:05`,
`2006-01-02T15:04:05.999999999`, `2006-01-02Z07:00`, and `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.
# EXAMPLES # EXAMPLES
@ -72,7 +81,7 @@ relative to the current time on the client machine:
# docker events --since '3m' # docker events --since '3m'
2015-05-12T11:51:30.999999999Z07:00 4386fb97867d: (from ubuntu-1:14.04) die 2015-05-12T11:51:30.999999999Z07:00 4386fb97867d: (from ubuntu-1:14.04) die
2015-05-12T15:52:12.999999999Z07:00 4 4386fb97867d: (from ubuntu-1:14.04) stop 2015-05-12T15:52:12.999999999Z07:00 4386fb97867d: (from ubuntu-1:14.04) stop
2015-05-12T15:53:45.999999999Z07:00 7805c1d35632: (from redis:2.8) die 2015-05-12T15:53:45.999999999Z07:00 7805c1d35632: (from redis:2.8) die
2015-05-12T15:54:03.999999999Z07:00 7805c1d35632: (from redis:2.8) stop 2015-05-12T15:54:03.999999999Z07:00 7805c1d35632: (from redis:2.8) stop
@ -84,3 +93,4 @@ April 2014, Originally compiled by William Henry (whenry at redhat dot com)
based on docker.com source material and internal work. based on docker.com source material and internal work.
June 2014, updated by Sven Dowideit <SvenDowideit@home.org.au> June 2014, updated by Sven Dowideit <SvenDowideit@home.org.au>
June 2015, updated by Brian Goff <cpuguy83@gmail.com> June 2015, updated by Brian Goff <cpuguy83@gmail.com>
October 2015, updated by Mike Brown <mikebrow@gmail.com>

View File

@ -42,11 +42,18 @@ logging drivers.
**--tail**="*all*" **--tail**="*all*"
Output the specified number of lines at the end of logs (defaults to all logs) Output the specified number of lines at the end of logs (defaults to all logs)
The `--since` option shows only the container logs generated after The `--since` option can be Unix timestamps, date formated timestamps, or Go
a given date. You can specify the date as an RFC 3339 date, a UNIX duration strings (e.g. `10m`, `1h30m`) computed relative to the client machines
timestamp, or a Go duration string (e.g. `1m30s`, `3h`). Docker computes time. Supported formats for date formated time stamps include RFC3339Nano,
the date relative to the client machines time. You can combine RFC3339, `2006-01-02T15:04:05`, `2006-01-02T15:04:05.999999999`,
the `--since` option with either or both of the `--follow` or `--tail` options. `2006-01-02Z07:00`, and `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 `--follow` or `--tail` options.
# HISTORY # HISTORY
April 2014, Originally compiled by William Henry (whenry at redhat dot com) April 2014, Originally compiled by William Henry (whenry at redhat dot com)
@ -54,3 +61,4 @@ based on docker.com source material and internal work.
June 2014, updated by Sven Dowideit <SvenDowideit@home.org.au> June 2014, updated by Sven Dowideit <SvenDowideit@home.org.au>
July 2014, updated by Sven Dowideit <SvenDowideit@home.org.au> July 2014, updated by Sven Dowideit <SvenDowideit@home.org.au>
April 2015, updated by Ahmet Alp Balkan <ahmetalpbalkan@gmail.com> April 2015, updated by Ahmet Alp Balkan <ahmetalpbalkan@gmail.com>
October 2015, updated by Mike Brown <mikebrow@gmail.com>