设置 Firelens 以向 CloudWatch Logs 发送日志 - Amazon CloudWatch
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

设置 Firelens 以向 CloudWatch Logs 发送日志

FireLens for Amazon ECS 使您能够使用任务定义参数将日志路由到 Amazon CloudWatch Logs,以进行日志存储和分析。FireLens 与 Fluent BitFluentd 配合使用。我们提供 Amazon for Fluent Bit 镜像,您也可以使用自己的 Fluent Bit 或 Fluentd 镜像。支持通过 Amazon SDK、Amazon CLI 和 Amazon Web Services Management Console 使用 FireLens 配置创建 Amazon ECS 任务定义。有关 CloudWatch Logs 的更多信息,请参阅什么是 CloudWatch Logs?

使用 FireLens for Amazon ECS 时有一些关键注意事项。有关更多信息,请参阅注意事项

要查找 Amazon for Fluent Bit 镜像,请参阅使用 Amazon for Fluent Bit 镜像

要创建使用 FireLens 配置的任务定义,请参阅创建使用 FireLens 配置的任务定义

示例

以下任务定义示例演示如何指定用于将日志转发到 CloudWatch Logs 日志组的日志配置。如需了解更多信息,请参阅 Amazon CloudWatch Logs 用户指南中的什么是 Amazon CloudWatch Logs?

在日志配置选项中,指定日志组名称及其所在的区域。要让 Fluent Bit 代表您创建日志组,请指定 "auto_create_group":"true"。您还可以将任务 ID 指定为有助于筛选的日志流前缀。有关更多信息,请参阅适用于 CloudWatch Logs 的 Fluent Bit 插件

{ "family": "firelens-example-cloudwatch", "taskRoleArn": "arn:aws:iam::123456789012:role/ecs_task_iam_role", "containerDefinitions": [ { "essential": true, "image": "906394416424.dkr.ecr.us-west-2.amazonaws.com/aws-for-fluent-bit:latest", "name": "log_router", "firelensConfiguration": { "type": "fluentbit" }, "logConfiguration": { "logDriver": "awslogs", "options": { "awslogs-group": "firelens-container", "awslogs-region": "us-west-2", "awslogs-create-group": "true", "awslogs-stream-prefix": "firelens" } }, "memoryReservation": 50 }, { "essential": true, "image": "nginx", "name": "app", "logConfiguration": { "logDriver":"awsfirelens", "options": { "Name": "cloudwatch", "region": "us-west-2", "log_key": "log", "log_group_name": "/aws/ecs/containerinsights/$(ecs_cluster)/application", "auto_create_group": "true", "log_stream_name": "$(ecs_task_id)" } }, "memoryReservation": 100 } ] }