Amazon ECS コンテナエージェントログの表示 - Amazon Elastic Container Service

Amazon ECS コンテナエージェントログの表示

Amazon ECS によってログはコンテナインスタンスの /var/log/ecs フォルダに保存されます。Amazon ECS コンテナエージェントから得られるログと、コンテナインスタンスのエージェントの状態 (スタート/停止) を制御する ecs-init サービスから得られるログがあります。これらのログファイルは、コンテナインスタンスに SSH で接続することにより表示できます。

注記

コンテナインスタンスのログをすべて収集する方法がわからない場合は、Amazon ECS ログコレクターを使用できます。詳細については、「Amazon ECS ログコレクターを使用したコンテナログの収集 」を参照してください。

ecs-init プロセスはログを /var/log/ecs/ecs-init.log に保存します。

ecs-init.log ファイルには、コンテナエージェントのライフサイクル管理、設定、ブートストラップに関する情報が含まれています。

ログファイルを表示するには、次のコマンドが使用できます。

cat /var/log/ecs/ecs-init.log

出力:

2018-02-16T18:13:54Z [INFO] pre-start 2018-02-16T18:13:56Z [INFO] start 2018-02-16T18:13:56Z [INFO] No existing agent container to remove. 2018-02-16T18:13:56Z [INFO] Starting Amazon Elastic Container Service Agent

Windows 用の Amazon ECS ログコレクターを使用できます。詳細については、Github の「Amazon ECS Logs Collector For Windows」を参照してください。

  1. インスタンスに接続します。

  2. PowerShell を開き、管理者権限で次のコマンドを実行します。このコマンドは、スクリプトをダウンロードし、ログを収集します。

    Invoke-WebRequest -OutFile ecs-logs-collector.ps1 https://raw.githubusercontent.com/awslabs/aws-ecs-logs-collector-for-windows/master/ecs-logs-collector.ps1 .\ecs-logs-collector.ps1

Amazon ECS エージェントおよび Docker デーモンのデバッグログを有効にできます。このオプションを使用すると、スクリプトはデバッグモードを有効にする前にログを収集できます。スクリプトは Docker デーモンと Amazon ECS エージェントを再起動し、インスタンスで実行されているすべてのコンテナを終了します。次のコマンドを実行する前に、コンテナインスタンスをドレインし、重要なタスクを他のコンテナインスタンスに移動します。

次のコマンドを実行して、ログ記録をオンにします。

.\ecs-logs-collector.ps1 -RunMode debug