Amazon ECS タスク定義の例: CloudWatch にログをルーティングする
コンテナがログを CloudWatch に送信する前に、タスク定義でコンテナの awslogs
ログドライバーを指定する必要があります。ログパラメータの詳細については、「ストレージとログ記録」を参照してください
下にあるタスク定義 JSON には、各コンテナに指定された logConfiguration
オブジェクトが含まれています。その 1 つは、awslogs-wordpress
というロググループにログを送信する WordPress コンテナ用です。もう 1 つは、awslogs-mysql
というロググループにログを送信する MySQL コンテナ用です。どちらのコンテナも awslogs-example
ログストリームプレフィックスを使用します。
{ "containerDefinitions": [ { "name": "wordpress", "links": [ "mysql" ], "image": "wordpress", "essential": true, "portMappings": [ { "containerPort": 80, "hostPort": 80 } ], "logConfiguration": { "logDriver": "awslogs", "options": { "awslogs-create-group": "true", "awslogs-group": "
awslogs-wordpress
", "awslogs-region": "us-west-2
", "awslogs-stream-prefix": "awslogs-example
" } }, "memory": 500, "cpu": 10 }, { "environment": [ { "name": "MYSQL_ROOT_PASSWORD", "value": "password" } ], "name": "mysql", "image": "mysql", "cpu": 10, "memory": 500, "essential": true, "logConfiguration": { "logDriver": "awslogs", "options": { "awslogs-create-group": "true", "awslogs-group": "awslogs-mysql
", "awslogs-region": "us-west-2
", "awslogs-stream-prefix": "awslogs-example
", "mode": "non-blocking", "max-buffer-size": "25m" } } } ], "family": "awslogs-example" }
awslogs
ログドライバーを使用するタスク定義をコンテナ定義ログ設定に登録すると、タスク定義を使用してタスクを実行またはサービスを作成し、CloudWatch Logs へのログの送信を開始できます。詳細については、Amazon ECS タスクとしてのアプリケーションの実行およびコンソールを使用した Amazon ECS サービスの作成を参照してください。