@liflig/cdk
    Preparing search index...

    Class QueueAlarms

    This construct provides a thin wrapper that creates two alarms for SQS queues.

    Unlike RDS and ECS alarm constructs in this package, QueueAlarms is set up manually by consumers (it doesn't auto-wire to resources).

    Defaults:

    • Messages-not-being-processed alarm -> sent to alarmAction by default
    • Approximate-age alarm -> sent to warningAction by default

    Hierarchy

    • Construct
      • QueueAlarms
    Index

    Constructors

    Properties

    node: Node

    The tree node.

    Methods

    • Alerts when the ApproximateAgeOfOldestMessage metric is high.

      Parameters

      • Optionalprops: {
            action?: IAlarmAction;
            alarmDescription?: string;
            enableOkAlarm?: boolean;
            evaluationPeriods?: number;
            period?: Duration;
            thresholdSeconds?: number;
        }
        • Optionalaction?: IAlarmAction

          An action to use for CloudWatch alarm state changes instead of the default warningAction

        • OptionalalarmDescription?: string
        • OptionalenableOkAlarm?: boolean
          false
          
        • OptionalevaluationPeriods?: number
          2
          
        • Optionalperiod?: Duration
          cdk.Duration.seconds(900) (15 minutes)
          
        • OptionalthresholdSeconds?: number

          Threshold in seconds for the age of the oldest message

          900 seconds (15 minutes)
          

      Returns void

    • Sets up a CloudWatch Composite Alarm that triggers if messages are not being deleted from queue, and there are visible messages on the queue.

      Parameters

      • Optionalprops: {
            action?: IAlarmAction;
            enableOkAlarm?: boolean;
            evaluationPeriodsMessagesDeleted?: number;
            evaluationPeriodsMessagesVisible?: number;
            period?: Duration;
            thresholdMessagesDeleted?: number;
            thresholdMessagesVisible?: number;
        }
        • Optionalaction?: IAlarmAction

          Per-alarm override of the action to use instead of the construct alarmAction

        • OptionalenableOkAlarm?: boolean
          true
          
        • OptionalevaluationPeriodsMessagesDeleted?: number

          Evaluation periods for NumberOfMessagesDeleted metric

          4
          
        • OptionalevaluationPeriodsMessagesVisible?: number

          Evaluation periods for MessagesVisible metric

          2
          
        • Optionalperiod?: Duration

          Period for metric evaluation as a CDK Duration

          cdk.Duration.seconds(300)
          
        • OptionalthresholdMessagesDeleted?: number

          Threshold for NumberOfMessagesDeleted (sum)

          0
          
        • OptionalthresholdMessagesVisible?: number

          Threshold for MessagesVisible metric (minimum)

          1
          

      Returns void

    • Alerts when too many messages exist on the queue.

      Parameters

      • props: {
            action?: IAlarmAction;
            alarmDescription?: string;
            enableOkAlarm?: boolean;
            evaluationPeriods?: number;
            messageAmountLimit: number;
            period?: Duration;
        }
        • Optionalaction?: IAlarmAction

          An action to use for CloudWatch alarm state changes instead of the default warningAction

        • OptionalalarmDescription?: string
        • OptionalenableOkAlarm?: boolean
          true
          
        • OptionalevaluationPeriods?: number
          1
          
        • messageAmountLimit: number

          Maximum number of visible messages before triggering the alarm

        • Optionalperiod?: Duration
          cdk.Duration.seconds(300)
          

      Returns void

    • Returns a string representation of this construct.

      Returns string

    • Applies one or more mixins to this construct.

      Mixins are applied in order. The list of constructs is captured at the start of the call, so constructs added by a mixin will not be visited. Use multiple with() calls if subsequent mixins should apply to added constructs.

      Parameters

      • ...mixins: IMixin[]

        The mixins to apply

      Returns IConstruct

      This construct for chaining

    • Checks if x is a construct.

      Use this method instead of instanceof to properly detect Construct instances, even when the construct library is symlinked.

      Explanation: in JavaScript, multiple copies of the constructs library on disk are seen as independent, completely different libraries. As a consequence, the class Construct in each copy of the constructs library is seen as a different class, and an instance of one class will not test as instanceof the other class. npm install will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the constructs library can be accidentally installed, and instanceof will behave unpredictably. It is safest to avoid using instanceof, and using this type-testing method instead.

      Parameters

      • x: any

        Any object

      Returns x is Construct

      true if x is an object created from a class which extends Construct.