Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: error if ECS task definition includes awslogs driver running in blocking mode #1812

Open
wants to merge 6 commits into
base: main
Choose a base branch
from

Conversation

MarrickLip
Copy link

This PR adds a new test (ECSTaskDefinitionAwslogsDriverNotBlocking) which validates whether there are containers in an ECS task definition which are using the awslogs driver in blocking mode. This is added to the AWS Solutions pack as AwsSolutions-ECS8.

Blocking mode is the default configuration, but it is not recommended 1 2 for many workloads as it blocks the container if logs can't be sent to CloudWatch for any reason. This is an availability risk as many applications would rather loose logs during a CloudWatch outage etc. than take downtime.

Footnotes

  1. Trusted Advisor check: https://docs.aws.amazon.com/awssupport/latest/user/fault-tolerance-checks.html#amazon-ec2-awslogs-driver-blockingmode

  2. Blog post: https://aws.amazon.com/blogs/containers/choosing-container-logging-options-to-avoid-backpressure/

@MarrickLip MarrickLip changed the title feat: error if ECS task definition has includes awslogs driver running in blocking mode feat: error if ECS task definition includes awslogs driver running in blocking mode Oct 21, 2024
@dontirun
Copy link
Collaborator

This seems like a good rule, however this is not part of the current AwsSolutions guidance. Let's move this to the Additional Rules for now.

I'll reach out to the team that manages AwsSolutions rules and see if they want this included in their set of checks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants