< Back

Monitoring: Amazon SQS

Amazon Simple Queue Service (Amazon SQS) is a fully managed message queuing service that makes it simple and cost-effective to decouple and scale distributed applications and microservices. It is a highly scalable, fault-tolerant, durable hosted queue without any single points of failure. You can access Amazon SQS through AWS SDK or AWS CLI from any programming language they support.

Why should you monitor Amazon SQS?

When monitoring Amazon SQS, it is important to keep a close eye on two specific metrics when monitoring your system: the age of the oldest messages in the queue and the length of the dead letter queue. These metrics are critical because they can indicate serious issues with your system.

Monitoring: Amazon SQS

How does monitoring Amazon SQS work?

Without further ado, marbot monitors Amazon SQS. Here is what a notification delivered to a Microsoft Teams channel looks like.

Amazon SQS alert in Microsoft Teams

And here is the same alert in Slack.

Amazon SQS alert in Slack

How do you set up monitoring of Amazon SQS?

marbot works with Slack and Microsoft Teams. Please select your platform and follow the Getting Started guide.

Which metrics does marbot monitor in detail?

marbot creates CloudWatch alarms to automatically monitor the following metrics of all SQS queues.

Metric Description
ApproximateAgeOfOldestMessage Get alerted if an SQS queue has old messages that are not processed.
ApproximateNumberOfMessagesVisible Get alerted if an SQS queue length grows too much.

How to fine-tune the monitoring of SQS queues?

It is possible to fine-tune the CloudWatch alarms created by marbot by adding tags to your SQS queue.

Tags are read every six hours. Therefore, it can take up to six hours before the CloudWatch alarm is adjusted.

tag key default value allowed values
marbot on on,off
marbot:approximate-age-of-oldest-message static static,off
marbot:approximate-age-of-oldest-message:threshold 600 >= 0
marbot:approximate-age-of-oldest-message:period 60 <= 86400 and multiple of 60
marbot:approximate-age-of-oldest-message:evaluation-periods 1 >= 1 and $period*$evaluation-periods <= 86400
marbot:approximate-number-of-messages-visible static static,off
marbot:approximate-number-of-messages-visible:threshold 10 >= 0
marbot:approximate-number-of-messages-visible:period 60 <= 86400 and multiple of 60
marbot:approximate-number-of-messages-visible:evaluation-periods 1 >= 1 and $period*$evaluation-periods <= 86400

More help needed? Or want to share feedback?

If you experience any issues, let us know.

E-mail icon
marbot teaser

Chatbot for AWS Monitoring

Configure monitoring for Amazon Web Services: CloudWatch, EC2, RDS, EB, Lambda, and more. Receive and manage alerts via Slack. Solve incidents as a team.

Add to Slack
Microsoft Teams
Add to Teams