Amazon SQS のメトリクス ApproximateNumberOfMessagesVisible の値がプロットされないことがあります。CloudWatch アラームを適切に設定する方法を教えてください。

Amazon SQS キューが 6 時間以上非アクティブな場合、Amazon SQS サービスはスリープ状態であると見なされ、CloudWatch サービスへのメトリクスの配信を停止します。スリープ状態になることが想定される場合は、CloudWatch アラームのしきい値を notBreaching にして、データ不足とならないようにすることが考えられます。
2024.01.09

困っていること

Amazon SQS のメトリクス ApproximateNumberOfMessagesVisible の値がプロットされなくなることがあります。

そのため、CloudWatch アラームで当該のメトリクスを監視する際に、データ不足となってしまいます。

対処法を教えてください。

どう対応すればいいの?

Amazon SQS のメトリクス ApproximateNumberOfMessagesVisible は対応する Amazon SQS キューが 6 時間以上非アクティブな場合、Amazon SQS サービスはスリープ状態であると見なされ、値のプロットがされなくなります。

そのため、CloudWatch アラームの欠落データの処理にて、notBreaching を選択することで値がプロットされていない場合はデータ不足とならないようにすることができます。

参考資料

Amazon SQS で利用可能な CloudWatch メトリクス - Amazon Simple Queue Service

ApproximateNumberOfMessagesVisible | 処理されるメッセージの数。 レポート基準:キューがアクティブな場合、負ではない値がレポートされます。

CloudWatch を使用した Amazon SQS キューのモニタリング - Amazon Simple Queue Service

Amazon SQS キューが 6 時間以上非アクティブな場合、Amazon SQS サービスはスリープ状態であると見なされ、CloudWatch サービスへのメトリクスの配信を停止します。欠損データ、またはゼロを表すデータは、Amazon SQS キューが非アクティブだった期間の Amazon SQS の CloudWatch メトリクスで視覚化できません。

Amazon CloudWatch でのアラームの使用 - Amazon CloudWatch

アラームごとに、CloudWatch が欠落データポイントを次のいずれかとして処理するように指定できます。

notBreaching – 欠落データポイントは「良好」かつしきい値内として扱われます。

breaching – 欠落データポイントは「不良」とされ、しきい値超過として扱われます。

ignore – 現在のアラーム状態が維持されます。

missing – アラーム評価範囲内のすべてのデータポイントがない場合、アラームは INSUFFICIENT_DATA に移行します。