Amazon ECS 任务定义示例:将日志路由到 CloudWatch
必须先在任务定义中为容器指定 awslogs
日志驱动程序,容器才能将日志发送到 CloudWatch。有关日志参数的更多信息,请参阅 存储和日志记录
下面的任务定义 JSON 有一个为每个容器指定的 logConfiguration
对象。一个是用于将日志发送到名为 awslogs-wordpress
的日志组的 WordPress 容器。另一个是用于将日志发送到名为 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" }
后续步骤
您可以选择使用 CloudWatch Amazon CLI 或 API 为日志组设置保留策略。有关更多信息,请参阅《Amazon Command Line Interface 命令参考》中的 put-retention-policy。
在容器定义日志配置中向
awslogs
日志驱动程序注册任务定义之后,可运行任务或使用此任务定义创建服务以开始将日志发送到 CloudWatch Logs。有关更多信息,请参阅将应用程序作为 Amazon ECS 任务运行 和使用控制台创建 Amazon ECS 服务。