Optimize waf api calls #277
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
WAF API Call Optimization
Problem Statement
The AWS WAF Security Automations solution was experiencing throttling issues when processing large numbers of IP addresses. This was due to redundant API calls being made to the AWS WAF service, particularly in the
waflibv2.py
module.Changes Made
update_ip_set
function inwaflibv2.py
to eliminate redundantget_ip_set
calls after updatesBenefits
Test Results
All unit tests have been run successfully, confirming that the changes do not break any existing functionality:
Implementation Details
The key change was in the
update_ip_set
function inwaflibv2.py
. Previously, this function would:update_ip_set
APIget_ip_set
API to retrieve the updated IP setget_ip_set
The optimized version now:
update_ip_set
APIupdate_ip_set
directlyThis change significantly reduces API calls while maintaining the same functionality.