SQSのメッセージ数の監視をNagiosで実施しています。 キュー内のメッセージ数(ApproximateNumberOfMessagesVisible)を監視するのですが、メッセージ数が閾値を 超えていなくても、処理数(NumberOfMessagesReceived )が、ある一定の期間0であった場合、 アプリケーションの方で障害があって処理できてないと見なし、アラート通知するようにしてみました。 実際のNagiosプラグインは下記となります。 # cat check_sqs #!/bin/sh . `dirname $0`/utils.sh set -e trap 'echo "UNKNOWN: $?"; exit $STATE_UNKNOWN' ERR WARN=0 CRIT=0 REVERSE=false while getopts c:w:q:p: OPTNAME; do ca