

# Amazon ECS コンテナエージェントログの表示
<a name="logs"></a>

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

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

## Linux オペレーティングシステム
<a name="logs-linux"></a>

`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 オペレーティングシステム
<a name="logs-windows"></a>

Windows 用の Amazon ECS ログコレクターを使用できます。詳細については、Github の「[Amazon ECS Logs Collector For Windows](https://github.com/awslabs/aws-ecs-logs-collector-for-windows?tab=readme-ov-file#aws-ecs-logs-collector-for-windows)」を参照してください。

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

1. 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
```