From 6ccc388658b58bca0e89149c69bcc7bfa1cfed2f Mon Sep 17 00:00:00 2001 From: Alexander Sulfrian Date: Fri, 14 Feb 2014 03:26:32 +0100 Subject: optional limits --- check_load | 14 +++++++------- check_mem | 10 +++++----- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/check_load b/check_load index 9f76b78..802839c 100755 --- a/check_load +++ b/check_load @@ -42,20 +42,20 @@ sub parse_thresholds($) { my $arg = shift; if ($arg) { - if ($arg =~ m/([0-9]+),([0-9]+),([0-9]+)/) { + if ($arg =~ m/^([0-9]*),([0-9]*),([0-9]*)$/) { return ($1, $2, $3); } - if ($arg =~ m/([0-9]+),([0-9]+)/) { + if ($arg =~ m/^([0-9]*),([0-9]*)$/) { return ($1, $2, $2); } - if ($arg =~ m/([0-9]+)/) { + if ($arg =~ m/^([0-9]*)$/) { return ($1, $1, $1); } } - return (0, 0, 0); + return undef; } sub get_load($$) { @@ -98,9 +98,9 @@ my (%warn, %crit); ($crit{'load1'}, $crit{'load5'}, $crit{'load15'}) = parse_thresholds($n->opts->c); for my $load (qw( load1 load5 load15 )) { - if ($crit{$load} < $warn{$load}) { - $n->nagios_exit(UNKNOWN, "Parameter inconsistency: warning load" . - "is greater than critical load for '$load'"); + if (defined $crit{$load} && defined $warn{$load} && $crit{$load} < $warn{$load}) { + die("Parameter inconsistency: warning load is greater " . + "than critical load for '$load'"); } } diff --git a/check_mem b/check_mem index e33cdb0..2c3321d 100755 --- a/check_mem +++ b/check_mem @@ -43,24 +43,24 @@ sub parse_thresholds($) { my $arg = shift; if ($arg) { - if ($arg =~ m/([-:@~0-9]+),([-:@~0-9]+),([-:@~0-9]+),([-:@~0-9]+)/) { + if ($arg =~ m/^([-:@~0-9]*),([-:@~0-9]*),([-:@~0-9]*),([-:@~0-9]*)$/) { return ($1, $2, $3, $4); } - if ($arg =~ m/([-:@~0-9]+),([-:@~0-9]+),([-:@~0-9]+)/) { + if ($arg =~ m/^([-:@~0-9]*),([-:@~0-9]*),([-:@~0-9]*)$/) { return ($1, $2, $3, $3); } - if ($arg =~ m/([-:@~0-9]+),([-:@~0-9]+)/) { + if ($arg =~ m/^([-:@~0-9]*),([-:@~0-9]*)$/) { return ($1, $2, $2, $2); } - if ($arg =~ m/([-:@~0-9]+)/) { + if ($arg =~ m/^([-:@~0-9]*)$/) { return ($1, $1, $1, $1); } } - return (); + return undef; } sub get_mem($$) { -- cgit v1.2.3-1-g7c22