Better Stack Amazon ECS logging

Start logging in 5 minutes

Send logs to Better Stack from your AWS ECS cluster using FireLens and Fluent Bit.

Set up log forwarding

Add Fluent Bit sidecar to your ECS task.

  1. Log into the AWS Console and search Elastic Container Service.
  2. Click Task definitions in the sidebar.
  3. Select your task definition and revision.
  4. Click Create a new revision with JSON button.
  5. Add Fluent Bit log router container to your task definition:
Task definition
{
    "family": "your_ecs_task",
    "containerDefinitions": [
        {
            "name": "your_app",
            ... Put your ECS app configuration here
            "essential": true,
            "logConfiguration": {
                "logDriver": "awsfirelens"
            }
        },
        {
            "name": "log_router",
            "image": "betterstack/aws-ecs-fluent-bit:amd64-latest", 
            "cpu": 256,
            "memory": 512,
            "memoryReservation": 50,
            "essential": true,
            "environment": [
                {
                    "name": "LOGTAIL_SOURCE_TOKEN",
                    "value": "$SOURCE_TOKEN"
                }
            ],
            "firelensConfiguration": {
                "type": "fluentbit",
                "options": {
                    "config-file-type": "file",
                    "config-file-value": "/fluent-bit-logtail.conf",
                    "enable-ecs-log-metadata": "true"
                }
            }
        }
    ],
    "networkMode": "host",
    ... Put your ECS task configuration here
}

Using ARM-based instances?

Use ARM log router image: betterstack/aws-ecs-fluent-bit:arm64-latest.

Deploy your task and you should see your logs in Better Stack → Live tail.

Need help?

Please let us know at hello@betterstack.com.
We're happy to help! 🙏

Additional information

Want to read about ECS logging and FireLens configuration in more detail?
Check out the Amazon ECS Custom log routing docs page.