Amazon AWS SQS Monitoring Extension

Use case:

The Amazon AWS SQS custom monitor captures statistics for Amazon SQS and displays them in the AppDynamics Metric Browser.

 

This extension works only with the standalone machine agent.

 

Installation:

  1. Download and Unzip the file SQSMonitor.zip into <machineagent install dir>/monitors/
  2. Open SQSConfigurations.yml and monitor.xml and configure the arguments
  3. Restart the machineagent
  4. In the AppDynamics Metric Browser, look for: Application Infrastructure Performance | <Tier> | Custom Metrics | Amazon SQS.

 

Configurations ( * -> Required ):

  1. *accesskey: Access-Key for SQS account.
  2. *secretkey: Secret-Key for SQS account.
  3. queues: Queue URLs that you want to monitor. If you want to monitor all available queues remove this field or Add a queue url - "All".
  4. attributes: attributes that you want to monitor for each queue. If you want to monitor all available queues remove this field or Add a queue url - "All". Below are the details:

  • All - Returns all values.
  • ApproximateNumberOfMessages - Returns the approximate number of visible messages in a queue.
  • ApproximateNumberOfMessagesNotVisible - Returns the approximate number of messages that are not timed-out and not deleted.
  • VisibilityTimeout - returns the visibility timeout for the queue.
  • CreatedTimestamp - returns the time when the queue was created (epoch time in seconds).
  • LastModifiedTimestamp - returns the time when the queue was last changed (epoch time in seconds).
  • MaximumMessageSize - returns the limit of how many bytes a message can contain before Amazon SQS rejects it.
  • MessageRetentionPeriod - Returns the number of seconds Amazon SQS retains a message.
  • ApproximateNumberOfMessagesDelayed - returns the approximate number of messages that are pending to be added to the queue.
  • DelaySeconds - returns the default delay on the queue in seconds.
  • ReceiveMessageWaitTimeSeconds - returns the time for which a ReceiveMessage call will wait for a message to arrive.

 

Amazon SQS Metrics:

Available Metrics will correspond to above mentioned attributes. 

 

Metric NameDescription
ApproximateNumberOfMessagesApproximate number of visible messages in a queue.
ApproximateNumberOfMessagesNotVisibleApproximate number of messages that are not timed-out and not deleted.
VisibilityTimeout

Visibility timeout for the queue

SinceLastModified

Returns the time in seconds from now, when the queue was modified  

MaximumMessageSizeLimit of how many bytes a message can contain before Amazon SQS rejects it  
MessageRetentionPeriodNumber of seconds Amazon SQS retains a message
ApproximateNumberOfMessagesDelayedApproximate number of messages that are pending to be added to the queue.  
DelaySeconds Default delay on the queue in seconds  
ReceiveMessageWaitTimeSecondsTime for which a ReceiveMessage call will wait for a message to arrive.
CreatedTimestampTime when the queue was created (epoch time in seconds).

 

 

Custom Dashboard for S3:

AWS SQS Dashboard.png

 

Contributing:

Always feel free to fork and contribute any changes directly via Github.

 

 

Support:

For any questions or feature request, please contact Appdynamics Help.

Version:

1.0.0

Compatibility:

3.7+

Last Update:

03/30/2015

Attachments: