Amazon Simple Queue Service
Developer Guide

Available CloudWatch Metrics for Amazon SQS

Amazon SQS sends the following metrics to CloudWatch.

Note

For standard queues, the result is approximate because of the distributed architecture of Amazon SQS. In most cases, the count should be close to the actual number of messages in the queue.

For FIFO queues, the result is exact.

Amazon SQS Metrics

The AWS/SQS namespace includes the following metrics.

Metric Description
ApproximateAgeOfOldestMessage The approximate age of the oldest non-deleted message in the queue.

Note

  • When the queue has a redrive policy, the message is moved to a dead-letter queue after the configured maximum number of receives. When the message is moved to the dead-letter queue, the ApproximateAgeOfOldestMessage metric of the dead-letter queue represents the time when the message was moved to the dead-letter queue (not the original time the message was sent).

  • When a queue doesn't have a redrive policy, after the message is received three times (or more) and not processed, the message is moved to the back of the queue and the ApproximateAgeOfOldestMessage metric points at the second-oldest message that hasn't been received more than three times.

  • Because a single poison-pill message (received multiple times but never deleted) can distort this metric, the age of a poison-pill message isn't included in the metric until the poison-pill message is consumed successfully.

Reporting Criteria: A non-negative value is reported if the queue is active.

Units: Seconds

Valid Statistics: Average, Minimum, Maximum, Sum, Data Samples (displays as Sample Count in the Amazon SQS console)

ApproximateNumberOfMessagesDelayed The number of messages in the queue that are delayed and not available for reading immediately. This can happen when the queue is configured as a delay queue or when a message has been sent with a delay parameter.

Reporting Criteria: A non-negative value is reported if the queue is active.

Units: Count

Valid Statistics: Average, Minimum, Maximum, Sum, Data Samples (displays as Sample Count in the Amazon SQS console)

ApproximateNumberOfMessagesNotVisible The number of messages that are in flight. Messages are considered to be in flight if they have been sent to a client but have not yet been deleted or have not yet reached the end of their visibility window.

Reporting Criteria: A non-negative value is reported if the queue is active.

Units: Count

Valid Statistics: Average, Minimum, Maximum, Sum, Data Samples (displays as Sample Count in the Amazon SQS console)

ApproximateNumberOfMessagesVisible The number of messages available for retrieval from the queue.

Reporting Criteria: A non-negative value is reported if the queue is active.

Units: Count

Valid Statistics: Average, Minimum, Maximum, Sum, Data Samples (displays as Sample Count in the Amazon SQS console)

NumberOfEmptyReceives The number of ReceiveMessage API calls that did not return a message.

Reporting Criteria: A non-negative value is reported if the queue is active.

Units: Count

Valid Statistics: Average, Minimum, Maximum, Sum, Data Samples (displays as Sample Count in the Amazon SQS console)

NumberOfMessagesDeleted The number of messages deleted from the queue.

Reporting Criteria: A non-negative value is reported if the queue is active.

Units: Count

Valid Statistics: Average, Minimum, Maximum, Sum, Data Samples (displays as Sample Count in the Amazon SQS console)

Amazon SQS emits the NumberOfMessagesDeleted metric for every successful deletion operation that uses a valid receipt handle, including duplicate deletions. The following scenarios might cause the value of the NumberOfMessagesDeleted metric to be higher than expected:
  • Calling the DeleteMessage action on different receipt handles that belong to the same message: If the message is not processed before the visibility timeout expires, the message becomes available to other consumers that can process it and delete it again, increasing the value of the NumberOfMessagesDeleted metric.

  • Calling the DeleteMessage action on the same receipt handle: If the message is processed and deleted but you call the DeleteMessage action again using the same receipt handle, a success status is returned, increasing the value of the NumberOfMessagesDeleted metric.

NumberOfMessagesReceived The number of messages returned by calls to the ReceiveMessage action.

Reporting Criteria: A non-negative value is reported if the queue is active.

Units: Count

Valid Statistics: Average, Minimum, Maximum, Sum, Data Samples (displays as Sample Count in the Amazon SQS console)

NumberOfMessagesSent

The number of messages added to a queue.

Reporting Criteria: A non-negative value is reported if the queue is active.

Units: Count

Valid Statistics: Average, Minimum, Maximum, Sum, Data Samples (displays as Sample Count in the Amazon SQS console)

SentMessageSize

The size of messages added to a queue.

Reporting Criteria: A non-negative value is reported if the queue is active.

Units: Bytes

Valid Statistics: Average, Minimum, Maximum, Sum, Data Samples (displays as Sample Count in the Amazon SQS console)

Note

SentMessageSize does not display as an available metric in the CloudWatch console until at least one message is sent to the corresponding queue.

Dimensions for Amazon SQS Metrics

The only dimension that Amazon SQS sends to CloudWatch is QueueName. This means that all available statistics are filtered by QueueName.