Skip to content

E3615: AWS::CloudWatch::Alarm Period: 20 rejected, documented as valid #4835

Open

Description

@hoganbr-amzn

CloudFormation Lint Version

1.58.0

What operating system are you using?

Linux

Describe the bug

E3615 reports 20 is not one of [10, 30, 60] or a multiple of 60 for an AWS::CloudWatch::Alarm with Period: 20. CloudWatch accepts 20 seconds as a high-resolution alarm period. The values come from src/cfnlint/data/schemas/extensions/aws_cloudwatch_alarm/period.json, which allows only 10, 30 and 60 at or below 60 seconds. That list matches the documentation quoted in #3553 (2024), before 20 was added. The other documented values (10, 30, 60 and multiples of 60) pass, and undocumented values such as 15 and 45 are still reported.

Expected behavior

No E3615 finding for Period: 20. The AWS::CloudWatch::Alarm Period documentation says: "Valid values are 10, 20, 30, 60, and any multiple of 60."

Reproduction template

AWSTemplateFormatVersion: "2010-09-09"
Description: CloudWatch alarm with a 20-second period on a high-resolution custom metric
Resources:
  Period20Alarm:
    Type: AWS::CloudWatch::Alarm
    Properties:
      AlarmDescription: High-resolution alarm, 20-second period
      Namespace: Example/HighResolution
      MetricName: Latency
      Statistic: Average
      Period: 20
      EvaluationPeriods: 1
      Threshold: 100
      ComparisonOperator: GreaterThanThreshold
      TreatMissingData: notBreaching

cfn-lint --regions us-east-1 -- template.yaml:

E3615 20 is not one of [10, 30, 60] or a multiple of 60
template.yaml:11:7

CloudFormation, us-east-1, 2026-10-22: CREATE_COMPLETE; cloudwatch describe-alarms shows the alarm with Period 20.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions