Deploying Failure Flags on AWS ECS
This document will walk you through setting up Failure-Flags-Sidecar for your ECS Tasks. Gremlin provides a sidecar container called "Failure-Flags-Sidecar" that runs alongside your application. Failure Flags sidecar container images are available via DockerHub and support both AMD64/x86_64 and ARM64 architectures. These container images include a LICENSE file and a single binary program built for Linux. Alternatively, you can download the archives directly for arm64 or x86_64.
You can find a list of releases in our release notes, or in our VERSIONS file.
Configuring Failure Flags for ECS
Failure Flags on ECS accepts the following environment variables:
Adding the sidecar to your container definitions
Adding the sidecar means including an additional task in any ECS application where you want to use Failure Flags. For example, this definition deploys an application named ff-nodejs-demoapp and the Gremlin sidecar container. This application will be listed in Gremlin with the name my-fargate-sidecar-demo (via the ECS_SERVICE_NAME environment variable):
ECS metadata discovered by Gremlin
Gremlin automatically detects the following environment variables for ECS functions:
Route Traffic
Inbound: in your ECS service's load balancer settings, set the target group to container gremlin-sidecar, port 5035, instead of app:3000. Health checks follow automatically.
Outbound: HTTP_PROXY/HTTPS_PROXY on the app container handle this for most runtimes. For Java, add -Dhttps.proxyHost=localhost -Dhttps.proxyPort=5034 (and the http. equivalents) to JAVA_TOOL_OPTIONS. For Node.js, configure your HTTP client's proxy agent.
Verify
- Deploy the new task definition revision and confirm both containers are
RUNNINGin the ECS console. - Check the sidecar's logs for successful registration:
aws logs tail /ecs/nodejs-ff-demoapp --follow. - Send a few requests through the load balancer, including some that call a dependency.
- In Gremlin, open Failure Flags.
my-fargate-sidecar-demoshould be listed withprocess,ingress,http-ingress,egress, and onedependency-flag per host it called.
If the service or its flags don't appear, see Troubleshooting Failure Flags.

