CodeGym /コース /Docker SELF /コンテナログの操作

コンテナログの操作

Docker SELF
レベル 11 , レッスン 3
使用可能

4.1 コマンドdocker logsの基本

docker logsコマンドは、コンテナの監視とデバッグに便利なツールだよ。これを使えば、開発者やシステム管理者がコンテナのログを確認して、問題診断やアプリの動作解析を助けてくれる。この講義では、docker logsコマンドの使用方法、利用可能なパラメータ、ログを効率的に管理する方法を詳しく説明するね。

docker logsコマンドは、指定されたコンテナのログを出力するんだ。このログには、コンテナ内のプロセスが標準出力(stdout)やエラー出力(stderr)に記録したすべてのメッセージが含まれるよ。

構文


docker logs [OPTIONS] CONTAINER

どこで:

  • CONTAINER: ログを確認したいコンテナの名前やID。
  • OPTIONS: ログ出力をカスタマイズするための追加オプション。

基本的な使用例

このコマンドは、コンテナmy_containerのすべての蓄積されたログを出力するよ。

ターミナル


docker logs my_container

4.2 docker logs コマンドのパラメータ

docker logs コマンドはいくつかのオプションをサポートしていて、必要に応じてログの出力をカスタマイズすることができるよ。

1. リアルタイムでログを表示する

リアルタイムでログを表示するには、-f (follow) オプションを使うよ。このオプションを使うと、tail -f コマンドのようにログ更新を追跡できるんだ。

ターミナル


docker logs -f my_container 

2. 出力する行数を制限する

docker logs コマンドで出力する行数を制限するには、--tail オプションを使うよ。これを使うと、ログの全部じゃなくて最新のログだけ見たい時に便利だね。

ターミナル


docker logs --tail 100 my_container 

この例では、コンテナ my_container の最新の100行だけが出力されるよ。

3. 特定の時間からのログを出力する

--since オプションを使うと、指定した時間からのログを出力できるんだ。時間はタイムスタンプ形式(例: 2023-07-20T15:00:00)や相対的な形式(例: 1h は直近1時間のログ)で指定できるよ。

ターミナル


docker logs --since "2023-07-20T15:00:00" my_container 

または

ターミナル


docker logs --since 1h my_container 

4. 特定の時間までのログを出力する

--until オプションを使うと、指定した時間までのログを出力できるよ。時間の形式は --since オプションと同じだよ。

ターミナル


docker logs --until "2023-07-20T16:00:00" my_container 

または

ターミナル


docker logs --until 10m my_container 

5. stdoutstderr を統合する

デフォルトでは、docker logs コマンドは標準出力 (stdout) と標準エラー出力 (stderr) の両方を出力するんだ。どちらのストリームを出力するか指定したい場合は、--stdout--stderr オプションを使ってみて。

ターミナル


docker logs --stdout my_container 

この例では標準出力ストリームのメッセージだけが出力されるよ。

4.3 使用例

例 1: 最新のログ行を表示し、更新をリアルタイムで追跡する

この例では、コンテナ my_container の最新50行を表示し、新しいエントリをリアルタイムで追跡します。

Terminal


docker logs -f --tail 50 my_container 

例 2: 過去24時間のログを表示する

この例では、コンテナ my_container に対する過去24時間以内のすべてのログを表示します。

Terminal


docker logs --since 24h my_container 

例 3: 特定の時間範囲のログを表示する

この例では、2023年7月20日の15:00から16:00の間に記録されたログを、コンテナ my_container に対して表示します。

Terminal


docker logs --since "2023-07-20T15:00:00" --until "2023-07-20T16:00:00" my_container 

4.4 実際のシナリオ

1. アプリケーションのデバッグ

アプリケーションが正しく動作しない、または「クラッシュ」する場合、ログを見ることで問題を診断できるよ。docker logsコマンドを使ってエラーや警告をログ内で探そう。

ターミナル


docker logs my_app_container 

2. サーバー稼働の監視

サーバーの稼働状況をリアルタイムで監視したい場合は、docker logsコマンドと-fオプションを使ってみて。

ターミナル


docker logs -f web_server_container 

これでサーバーのリクエストやレスポンスをリアルタイムで追跡できるよ。

3. パフォーマンスの分析

特定の期間のアプリケーションのパフォーマンスを分析したいなら、--since--untilパラメータを使おう。

ターミナル

        
docker logs --since "2023-07-20T00:00:00" --until "2023-07-20T23:59:59" my_app_container 
コメント
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION