2016-05-19 8 views
0

たとえば、メッセージは2016-05-19 23:29:05のキューに送信されます。そしてそれは消費者によって2016-05-19 23:30:05に受け取られています。処理後、メッセージは2016-05-19 23:30:08で削除されます。つまり、キューに送られたメッセージから消費者に受信されるまでに60秒かかっており、生まれたメッセージから63秒がかかります。AWS SQS - 「キューに送信されたメッセージ」から「受信されたメッセージ」までの時間間隔はどのようにわかりますか?

このメトリックは、消費者がメッセージを消費する速度を監視するのに役立ちます。

メッセージの有効期間を取得するには、キューに送信されるときに、タイムスタンプ属性を各メッセージに手動で追加する必要があります。コンシューマーはタイムスタンプを取得し、時間間隔を計算します。

SQSはメッセージの存続期間を取得するための同様のAPIを提供していますか(私はSQS APIをチェックしましたが、運がない)、または他の良いアイデアはありますか?

+1

を参照してください。答えはSQSではNOです。前述の機能は、ほとんどのMQサーバーのオーバーヘッドです。 – mootmoot

答えて

2

SQSメッセージには、キュー内のメッセージが費やした時間を測定できる属性があります。

属性の一部を、あなたは使用することができます SentTimestamp、CreatedTimestamp、LastModifiedTimestampなど

私はjavascriptのSDKを見ていた、と明示的に http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/SQS.html#receiveMessage-property

のために要求されたときにいくつかの属性のみが返されるようにそれはそうSQSメッセージ内で使用可能なすべての属性のリストについては、http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ReceiveMessage.html

関連する問題