docker logs¶
補足説明¶
docker logs
コマンドは、コンテナの実行時から現在に至るまでのログを、逐次表示します。
注釈
このコマンドが使えるのは、コンテナが json-file
と journald
ロギング・ドライバを使って起動する場合のみです。
ロギング・ドライバの選択や設定に関する詳しい情報は ロギング・ドライバの設定 をご覧ください。
docker logs --follow
および docker logs -f
コマンドは、コンテナの STDOUT
と STDERR
から新しい出力があれば、 表示し続けます。
負の値の指定や、 --tail
に値を付けなければ、全てのログを表示します。
docker logs --timestamp
コマンドは RFC3339 Nano timestamp を追加します。例えば 2014-09-16T06:17:46.000000000Z
のように、各ログ行に追加されます。タイムスタンプはナノ秒で表示されるため、不要な場合でもゼロが付加されます。
docker logs --details
コマンドは、コンテナ作成時に --log-opt
で指定した環境変数やラベルなどの追加属性も表示します。
--since
オプションは指定した日時以降のログを表示します。指定できる日付は RFC 3339 date、UNIX タイムスタンプ、Go 言語の期間文字(例: 1m30s
、 3h
)です。Docker はクライアント側のマシン上からの相対時間を計算します。日付形式のタイムスタンプがサポートしているのは、RFC3339Nano 、 RFC3339 、 2006-01-02T15:04:05
、 2006-01-02T15:04:05.999999999
、 2006-01-02Z07:00
、 2006-01-02
です。タイムスタンプの最後にタイムゾーンオフセットとして Z
か +-00:00
が指定されなければ、デーモンはローカルのタイムゾーンを使います。Unix タイムスタンプを 秒[.ナノ秒] で指定すると、秒数は 1970 年 1 月 1 日(UTC/GMT 零時)からの経過時間ですが、うるう秒(別名 Unix epoch や Unix time)を含みません。また、オプションで、9桁以上 .ナノ秒 フィールドは省略されます。 --since
オプションは --follow
と --tail
と同時に使えます。
コマンドの使用例は、以下の 使用例のセクション をご覧ください。
オプション¶
名前, 省略形 |
デフォルト |
説明 |
---|---|---|
|
ログに提供する詳細情報を表示 |
|
|
出力をフォローし続ける(表示し続ける) |
|
|
タイムスタンプ(例: 2013-01-02T13:23:37Z)以降、あるいは相対時刻(例: 42m は 42 分)以降のログを表示 |
|
|
|
ログの最終から数えた行以降を表示 |
|
タイムスタンプを表示 |
|
|
【API 1.35+】タイムスタンプ(例: 2013-01-02T13:23:37Z)まで、あるいは相対時刻(例: 42m は 42 分)までのログを表示 |
使用例¶
指定時間までのログを表示¶
指定した時点までのログを表示するには、次のように実行します。
$ 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