You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
2.0 KiB
62 lines
2.0 KiB
From c09c063754e5e6dbd36e85870ef5cb61253aa1a0 Mon Sep 17 00:00:00 2001 |
|
From: Ron Griffin <rongriffin@gmail.com> |
|
Date: Thu, 6 Oct 2016 15:21:18 -0500 |
|
Subject: [PATCH 05/10] If a queue is not found, report an UNKNOWN status (#75) |
|
|
|
* If a queue is not found, report an UNKNOWN status |
|
* Add ignore option to report an OK status if queue doesn't exist |
|
* Setting default value for ignore option |
|
--- |
|
scripts/check_rabbitmq_queue | 15 +++++++++++++++ |
|
1 file changed, 15 insertions(+) |
|
|
|
diff --git a/scripts/check_rabbitmq_queue b/scripts/check_rabbitmq_queue |
|
index b8201d5..0909798 100755 |
|
--- a/scripts/check_rabbitmq_queue |
|
+++ b/scripts/check_rabbitmq_queue |
|
@@ -95,6 +95,11 @@ $p->add_arg(spec => 'proxyurl=s', |
|
help => "Use proxy url like http://proxy.domain.com:8080", |
|
); |
|
|
|
+$p->add_arg(spec => 'ignore|ignore!', |
|
+ help => "Ignore alerts if queue does not exist (default: false)", |
|
+ default => 0 |
|
+); |
|
+ |
|
# Parse arguments and process standard ones (e.g. usage, help, version) |
|
$p->getopts; |
|
|
|
@@ -131,6 +136,7 @@ my $port=$p->opts->port; |
|
my $vhost=uri_escape($p->opts->vhost); |
|
my $queue=$p->opts->queue; |
|
my $filter=$p->opts->filter; |
|
+my $ignore=$p->opts->ignore; |
|
|
|
my $ua = LWP::UserAgent->new; |
|
if (defined $p->opts->proxyurl) |
|
@@ -154,6 +160,9 @@ if ($queue eq "all"){ |
|
$url = sprintf("http%s://%s:%d/api/queues/%s/%s", ($p->opts->ssl ? "s" : ""), $hostname, $port, $vhost, $queue); |
|
} |
|
my ($retcode, $result) = request($url); |
|
+if ($retcode == 404 && $ignore) { |
|
+ $p->nagios_exit(OK, "$result : $url"); |
|
+} |
|
if ($retcode != 200) { |
|
$p->nagios_exit(CRITICAL, "$result : $url"); |
|
} |
|
@@ -296,6 +305,12 @@ messages_unacknowledged and consumers. This field consists of |
|
one to four comma-separated thresholds. Specify -1 if no threshold |
|
for a particular count. |
|
|
|
+=item --ignore |
|
+ |
|
+If the queue specified does not exist, this option ignores |
|
+CRITICAL alerts and returns a status of OK. Useful for scenarios |
|
+where queue existence is optional. |
|
+ |
|
=back |
|
|
|
=head1 THRESHOLD FORMAT |
|
-- |
|
2.20.1 |
|
|
|
|