翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon SQS で利用可能な CloudWatchメトリクス
Amazon SQS は、次のメトリクスをCloudWatchに送信します。
注記
一部のメトリクスでは、Amazon SQS の分散アーキテクチャにより、結果は概算になります。ほとんどの場合、カウントはキュー内の実際のメッセージ数に近い数値になります。
Amazon SQSメトリクス
Amazon SQS は、 AWS/SQS
名前空間の Amazon CloudWatch に運用メトリクスを自動的に発行します。これらのメトリクスは、キューのヘルスとパフォーマンスをモニタリングするのに役立ちます。SQS は分散型であるため、多くの値は概算ですが、ほとんどの運用上の決定には十分正確です。
注記
-
すべてのメトリクスは、キューがアクティブな場合にのみ負以外の値を出力します。
-
一部のメトリクス ( など
SentMessageSize
) は、少なくとも 1 つのメッセージが送信されるまで出力されません。
メトリクス | 説明 | 単位 | レポート動作 | キーノート |
---|---|---|---|---|
ApproximateAgeOfOldestMessage |
キュー内の最も古い未処理メッセージの経過時間。 | [秒] |
キューにアクティブなメッセージが少なくとも 1 つ含まれている場合に報告されます。 |
|
ApproximateNumberOfGroupsWithInflightMessages |
FIFO のみ。1 つ以上の処理中のメッセージを含むメッセージグループの数。 | カウント |
FIFO キューがアクティブである場合に報告されます。 |
|
ApproximateNumberOfMessagesDelayed |
キュー内で遅延し、すぐに取得できないメッセージの数。 |
カウント |
遅延メッセージがキューに存在する場合に報告されます。 |
|
ApproximateNumberOfMessagesNotVisible |
受信されたが、まだ削除または期限切れになっていない処理中のメッセージの数。 | カウント |
処理中のメッセージが存在する場合に報告されます。 |
|
ApproximateNumberOfMessagesVisible |
現在取得と処理に使用できるメッセージの数。 | カウント |
キューがアクティブの場合に報告されます。 |
|
NumberOfEmptyReceives 1 |
メッセージが返されなかった ReceiveMessage API コールの数。 | カウント |
受信オペレーション中に報告されます。 |
|
NumberOfDeduplicatedSentMessages |
FIFO のみ。重複排除され、キューに追加されなかった送信メッセージの数。 | カウント |
重複したMessageDeduplicationId 値またはコンテンツが検出された場合に報告されます。 |
|
NumberOfMessagesDeleted 1 |
キューから正常に削除されたメッセージの数。 |
カウント |
有効な受信ハンドルを持つ削除リクエストごとにレポートされます。 |
|
NumberOfMessagesReceived 1 |
ReceiveMessage API によって返されたメッセージの数。 | カウント |
受信オペレーション中に報告されます。 |
|
NumberOfMessagesSent 1 |
キューに正常に追加されたメッセージの数。 | カウント |
手動送信が成功するたびにレポートされます。 |
|
SentMessageSize 1 |
キューに正常に送信されたメッセージのサイズ。 |
バイト |
少なくとも 1 つのメッセージが送信されるまで出力されません。 |
|
ApproximateNumberOfNoisyGroups |
公平キューでノイズが多いと見なされるメッセージグループの数。ノイズの多いメッセージグループは、マルチテナントキューのノイズの多い近隣テナントを表します。 |
カウント |
キューがアクティブの場合、負以外の値がレポートされます。 |
|
ApproximateNumberOfMessagesVisibleInQuietGroups |
ノイズの多いメッセージグループからのメッセージを除外して表示されるメッセージの数。 |
カウント |
キューがアクティブな場合、負以外の値がレポートされます。 |
|
ApproximateNumberOfMessagesNotVisibleInQuietGroups |
ノイズの多いメッセージグループからのメッセージを除く、進行中のメッセージの数。 | カウント |
キューがアクティブな場合、負以外の値がレポートされます。 |
|
ApproximateNumberOfMessagesDelayedInQuietGroups |
遅延したノイズの多いメッセージグループからのメッセージを除外し、すぐに読み取ることができないメッセージの数。遅延メッセージは、キューが遅延キューとして設定されている場合、または遅延パラメータを使用してメッセージを送信した場合に発生します。 | カウント |
キューがアクティブな場合、負以外の値が報告されます。 |
|
ApproximateAgeOfOldestMessageInQuietGroups |
ノイズの多いメッセージグループからのメッセージを除く、キュー内の削除されていない最も古いメッセージの経過時間。 | [秒] |
キューがアクティブな場合、負以外の値がレポートされます。 |
|
1 これらのメトリクスはシステムレベルのアクティビティを反映し、再試行、重複、遅延メッセージが含まれる場合があります。raw カウントを使用して、メッセージライフサイクルの動作を考慮せずにリアルタイムキューの状態を推定しないでください。
デッドレターキュー (DLQs) と CloudWatch メトリクス
DLQs を使用する場合は、Amazon SQS メトリクスの動作を理解することが重要です。
-
NumberOfMessagesSent
– このメトリクスの動作は DLQsによって異なります。-
手動送信 – DLQ に手動で送信されたメッセージは、このメトリクスによってキャプチャされます。
-
自動再処理 – 処理の失敗によって DLQ に自動的に移動されたメッセージは、このメトリクスではキャプチャされません。その結果、
NumberOfMessagesSent
およびNumberOfMessagesReceived
メトリクスに DLQsの不一致が表示される場合があります。
-
-
DLQs の推奨メトリクス – DLQ の状態をモニタリングするには、
ApproximateNumberOfMessagesVisible
メトリクスを使用します。このメトリクスは、DLQ で現在処理可能なメッセージの数を示します。
フェアキューと CloudWatch メトリクス
公平キューを使用すると、Amazon SQS は次の追加のメトリクスを出力します。
-
ApproximateNumberOfNoisyGroups
-
ApproximateNumberOfMessagesVisibleInQuietGroups
-
ApproximateNumberOfMessagesNotVisibleInQuietGroups
-
ApproximateNumberOfMessagesDelayedInQuietGroups
-
ApproximateAgeOfOldestMessageInQuietGroups
注記
各QuietGroup
メトリクスは同等の標準キューレベルのApproximate
メトリクスのサブセットですが、ノイズの多い近隣グループからメッセージを除外します。
- ノイズの多いグループ
-
ノイズの多いメッセージグループは、マルチテナントキューのノイズの多い近隣テナントを表します。
- クワイエットグループ
-
ノイズの多いグループを除くメッセージグループ。
SQS 公平キューの動作を観察する
Amazon SQS 公平キューの効果をモニタリングするには、Approximate..InQuietGroups
メトリクスを標準のキューレベルのメトリクスと比較します。特定のテナントのトラフィックが急増すると、一般的なキューレベルのメトリクスで、バックログの増加やメッセージ経過時間が古くなる可能性があります。ただし、クワイエットグループを個別に見ると、ノイズのないメッセージグループやテナントのほとんどが影響を受けていないことを特定し、影響を受けるメッセージグループの総数の見積もりを提供できます。
これらの新しいメトリクスは、Amazon SQS 公平キューの動作に関する適切な概要を提供しますが、どの特定のテナントが負荷を引き起こしているかを理解することは有益です。Amazon CloudWatch 寄稿者インサイトを使用すると、上位 1 位の寄稿者、一意の寄稿者の総数、およびその使用状況に関するメトリクスを表示できます。これは、従来のメトリクスを出力するときにカーディナリティデータ (およびコスト) が高くなる数千のテナントを扱うシナリオで特に役立ちます。
公平キューの設定をモニタリングする例については、GitHub
Amazon SQS メトリクスのディメンション
CloudWatch の Amazon SQS メトリクスは、単一のディメンション を使用しますQueueName
。すべてのメトリクスデータは、キューの名前でグループ化およびフィルタリングされます。
モニタリングのヒント
キーメトリクスと CloudWatch アラームを使用して SQS を効果的にモニタリングし、キューのバックログを検出し、パフォーマンスを最適化して、サービスの制限内を維持します。
-
に基づいて CloudWatch アラームを設定
ApproximateNumberOfMessagesVisible
して、バックログの増加をキャッチします。 -
をモニタリング
NumberOfEmptyReceives
してポーリング頻度を調整し、API コストを削減します。 -
FIFO キュー
ApproximateNumberOfGroupsWithInflightMessages
で を使用してスループット制限を診断します。 -
SQS クォータを確認して、メトリクスのしきい値とサービスの制限を理解します。