コンテナインスタンスでの CloudWatch Logs の使用 - Amazon Elastic Container Service

コンテナインスタンスでの CloudWatch Logs の使用

ログ情報を CloudWatch Logs に送信するように、コンテナインスタンスを設定できます。これにより、1 つの便利な場所でコンテナインスタンスからのさまざまなログを表示できます。このトピックは、Amazon ECS-optimized Amazon Linux AMI で起動されたコンテナインスタンスでの CloudWatch Logs の使用開始に役立ちます。

タスクのコンテナログを CloudWatch Logs に送信に関する詳細については、「awslogs ログドライバーを使用する」を参照してください。CloudWatch Logs の詳細については、Amazon CloudWatch ユーザーガイド の「ログファイルのモニタリング」を参照してください。

CloudWatch Logs IAM ポリシー

コンテナインスタンスが CloudWatch Logs にログデータを送信する前に、コンテナインスタンスに CloudWatch Logs API の使用を許可する IAM ポリシーを作成し、そのポリシーを ecsInstanceRole にアタッチする必要があります。

ECS-CloudWatchLogs IAM ポリシーを作成するには

  1. IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

  2. ナビゲーションペインで、[ポリシー] を選択します。

  3. [ポリシーの作成]、[JSON] を選択します。

  4. 以下のポリシーを入力します。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogStreams" ], "Resource": [ "arn:aws:logs:*:*:*" ] } ] }
  5. [ポリシーの確認] を選択します。

  6. [ポリシーの確認] ページで、[名前] に ECS-CloudWatchLogs を入力し、[ポリシーの作成] を選択します。

ECS-CloudWatchLogs ポリシーを ecsInstanceRole にアタッチするには

  1. IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

  2. ナビゲーションペインで [Roles (ロール) ] を選択します。

  3. ecsInstanceRole を選択します。ロールが存在しない場合は、「Amazon ECS コンテナインスタンス IAM ロール」の手順に従ってロールを作成します。

  4. [Permissions (アクセス許可)]、[Attach policies (ポリシーのアタッチ)] の順に選択します。

  5. アタッチする使用可能なポリシーを絞り込むために、[フィルター] に「ECS-CloudWatchLogs」と入力します。

  6. [ECS-CloudWatchLogs] ポリシーを選択してから、[Attach policies (ポリシーのアタッチ)] を選択します。

CloudWatch エージェントのインストールと設定

ecsInstanceRoleECS-CloudWatchLogs ポリシーを追加した後、コンテナインスタンスに CloudWatch エージェントをインストールできます。

詳細については、Amazon CloudWatch ユーザーガイド の「コマンドラインを使用した CloudWatch エージェントのダウンロードと設定」を参照してください。

CloudWatch Logs の表示

CloudWatch Logs にログを送信するための適切なアクセス権限をコンテナインスタンスロールに付与し、エージェントを設定して開始した後、コンテナインスタンスからそのログデータが CloudWatch Logs に送信されるようになります。これらのログは AWS マネジメントコンソール で表示および検索できます。

注記

新しいインスタンスの起動では、CloudWatch Logs へのデータの送信に数分かかることがあります。

CloudWatch Logs のデータを表示するには

  1. https://console.aws.amazon.com/cloudwatch/ にある CloudWatch コンソールを開きます。

  2. 左側のナビゲーションペインで、[Logs (ログ)]、[Log groups (ロググループ)] の順に選択します。

    
                            CloudWatch コンソールのメトリクスビュー
  3. 表示するロググループを選択します。

  4. 表示するログストリームを選択します。ストリームは、ログの送信元のクラスター名とコンテナインスタンス ID によって識別されます。

    
                            CloudWatch コンソールのメトリクスビュー