Skip to content

Conversation

@mrgrain
Copy link
Contributor

@mrgrain mrgrain commented Nov 25, 2025

Adjusts the NPM.js canary alarm timing configuration to properly trigger when the SLA is breached.

Problem

The previous configuration would never trigger the alarm. With a 5 minute period and 4 evaluation periods, the alarm would evaluate over a 20 minute window. However, the canary runs once per hour, meaning CloudWatch only receives metrics hourly. Since we treat missing data points as not breaching, there would never be enough data points to evaluate 4 periods before the next canary run, preventing the alarm from ever triggering.

Solution

The new configuration uses a 10 minute period with 1 evaluation period. This triggers the alarm immediately when a canary run reports metrics exceeding the SLA threshold. Since exceeding the SLA is itself a breach, there's no need to wait for multiple data points. The 10 minute period provides quick detection while accounting for potential drift in the hourly canary schedule.


By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license

…ution

Increase alarm period to 30 minutes and evaluation periods to 6 to properly detect when canary is overdue for 3 hours, aligning with the hourly canary execution schedule.
@mrgrain mrgrain force-pushed the mrgrain/fix/package-sources/canary-alarm-timing branch from b160907 to e2d1481 Compare November 25, 2025 09:28
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
@cdklabs-automation cdklabs-automation added this pull request to the merge queue Nov 25, 2025
Merged via the queue into main with commit c105661 Nov 25, 2025
7 checks passed
@cdklabs-automation cdklabs-automation deleted the mrgrain/fix/package-sources/canary-alarm-timing branch November 25, 2025 10:37
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.

3 participants