Compare commits
8 commits
05b203575a
...
0ce061bcc4
Author | SHA1 | Date | |
---|---|---|---|
0ce061bcc4 | |||
6db06234ca | |||
608adcbea1 | |||
5638743330 | |||
d0702fa34d | |||
67af3233b6 | |||
|
6d30de762d | ||
|
f82efb477b |
7 changed files with 1001 additions and 5 deletions
2
.github/workflows/packaging_test.yml
vendored
2
.github/workflows/packaging_test.yml
vendored
|
@ -27,7 +27,7 @@ jobs:
|
|||
run: |
|
||||
sed -i '0,/restricted/s//stable/' debian/changelog
|
||||
- name: Build Debian package
|
||||
uses: dawidd6/action-debian-package@v1.5.0
|
||||
uses: dawidd6/action-debian-package@v1.6.0
|
||||
with:
|
||||
artifacts_directory: debian/build/release/
|
||||
os_distribution: testing
|
||||
|
|
2
.github/workflows/release.yml
vendored
2
.github/workflows/release.yml
vendored
|
@ -53,7 +53,7 @@ jobs:
|
|||
run: |
|
||||
sed -i '0,/restricted/s//stable/' debian/changelog
|
||||
- name: Build Debian package
|
||||
uses: dawidd6/action-debian-package@v1.5.0
|
||||
uses: dawidd6/action-debian-package@v1.6.0
|
||||
with:
|
||||
artifacts_directory: debian/build/release/
|
||||
os_distribution: testing
|
||||
|
|
16
debian/changelog
vendored
16
debian/changelog
vendored
|
@ -1,8 +1,20 @@
|
|||
nagios-snmp-plugins (2.1.0-4) UNRELEASED; urgency=medium
|
||||
nagios-snmp-plugins (2.1.0-5) UNRELEASED; urgency=medium
|
||||
|
||||
*
|
||||
|
||||
-- Jan Wagner <waja@cyconet.org> Mon, 23 Jan 2023 14:23:45 +0000
|
||||
-- Jan Wagner <waja@cyconet.org> Tue, 23 Jul 2024 08:00:17 +0200
|
||||
|
||||
nagios-snmp-plugins (2.1.0-4) unstable; urgency=medium
|
||||
|
||||
[ Bas Couwenberg ]
|
||||
* [13ac6fb] Explicitly enable test-build-twice job.
|
||||
|
||||
[ Jan Wagner ]
|
||||
* [67af323] Adding d/p/23_check_snmp_int_interface_speed from upsgtream
|
||||
* [d0702fa] Adding d/p/24_tcp_udp_ipv4_ipv6 from upsgtream
|
||||
* [5638743] Adding d/p/25_check_snmp_int_add_metrik from upsgtream
|
||||
|
||||
-- Jan Wagner <waja@cyconet.org> Tue, 23 Jul 2024 05:44:14 +0000
|
||||
|
||||
nagios-snmp-plugins (2.1.0-3) unstable; urgency=medium
|
||||
|
||||
|
|
138
debian/patches/23_check_snmp_int_interface_speed
vendored
Normal file
138
debian/patches/23_check_snmp_int_interface_speed
vendored
Normal file
|
@ -0,0 +1,138 @@
|
|||
diff --git a/doc/04-Plugins.md b/doc/04-Plugins.md
|
||||
index c08fe9c..bf2a593 100644
|
||||
--- a/doc/04-Plugins.md
|
||||
+++ b/doc/04-Plugins.md
|
||||
@@ -207,13 +207,13 @@ Usage: ./check_snmp_int.pl [-v] -H <host> -C <snmp_community> [-2] | (-l login -
|
||||
-G : Make the warning and critical levels in Gbps (with -B) or GBps
|
||||
-M : Make the warning and critical levels in Mbps (with -B) or MBps
|
||||
-u : Make the warning and critical levels in % of reported interface speed.
|
||||
--w, --warning=input,output[,error in,error out,discard in,discard out]
|
||||
+-w, --warning=input,output[,error in,error out,discard in,discard out,interface speed]
|
||||
warning level for input / output bandwidth (0 for no warning)
|
||||
- unit depends on B,M,G,u options
|
||||
+ unit depends on B,M,G,u options and interface speed is in bps
|
||||
warning for error & discard input / output in error/min (need -q)
|
||||
--c, --critical=input,output[,error in,error out,discard in,discard out]
|
||||
+-c, --critical=input,output[,error in,error out,discard in,discard out,interface speed]
|
||||
critical level for input / output bandwidth (0 for no critical)
|
||||
- unit depends on B,M,G,u options
|
||||
+ unit depends on B,M,G,u options and interface speed is in bps
|
||||
critical for error & discard input / output in error/min (need -q)
|
||||
-s, --short=int
|
||||
Make the output shorter : only the first <n> chars of the interface(s)
|
||||
diff --git a/doc/html/nagios.manubulon.com/snmp_int.html b/doc/html/nagios.manubulon.com/snmp_int.html
|
||||
index 8274a05..1c5f68f 100644
|
||||
--- a/doc/html/nagios.manubulon.com/snmp_int.html
|
||||
+++ b/doc/html/nagios.manubulon.com/snmp_int.html
|
||||
@@ -337,13 +337,14 @@
|
||||
<p class="SectionBody">When the extended checks are activated (-q
|
||||
option), the warning levels are <br>
|
||||
-w <i><In bytes></i>,<i><Out bytes></i>,<i><In error></i>,<i><Out
|
||||
- error>,<i><In disc></i>,<i><Out disc></i></i> -c
|
||||
+ error>,<i><In disc></i>,<i><Out disc></i>,<i><Interface speed></i></i> -c
|
||||
<i><In warn></i>,<i><Out warn></i>, .....<br>
|
||||
In error : warn/crit level in inboud <b>error/minute<br>
|
||||
</b>Out error : warn/crit level in outbound error/minute<b> </b><br>
|
||||
In disc : warn/crit level in inboud <b>discarded packets/minute<br>
|
||||
- </b>Out disc : warn/crit level in outbound discarded packets/minute<b>
|
||||
- </b><br>
|
||||
+ </b>Out disc : warn/crit level in outbound discarded packets/minute<b> </b><br>
|
||||
+ Interface speed : warn/crit level of Interface speed <b>discarded bits/second<br>
|
||||
+ </b>
|
||||
</p>
|
||||
<p class="SectionBody"><b>-k</b> : activates the standard usage feature<br>
|
||||
<b>-q</b> : activates the extended usage<br>
|
||||
diff --git a/plugins/check_snmp_int.pl b/plugins/check_snmp_int.pl
|
||||
index 71f8d14..d978c66 100755
|
||||
--- a/plugins/check_snmp_int.pl
|
||||
+++ b/plugins/check_snmp_int.pl
|
||||
@@ -262,11 +262,11 @@ sub help {
|
||||
-G : Make the warning and critical levels in Gbps (with -B) or GBps
|
||||
-M : Make the warning and critical levels in Mbps (with -B) or MBps
|
||||
-u : Make the warning and critical levels in % of reported interface speed.
|
||||
--w, --warning=input,output[,error in,error out,discard in,discard out]
|
||||
+-w, --warning=input,output[,error in,error out,discard in,discard out,interface speed]
|
||||
warning level for input / output bandwidth (0 for no warning)
|
||||
unit depends on B,M,G,u options
|
||||
warning for error & discard input / output in error/min (need -q)
|
||||
--c, --critical=input,output[,error in,error out,discard in,discard out]
|
||||
+-c, --critical=input,output[,error in,error out,discard in,discard out,interface speed]
|
||||
critical level for input / output bandwidth (0 for no critical)
|
||||
unit depends on B,M,G,u options
|
||||
critical for error & discard input / output in error/min (need -q)
|
||||
@@ -452,8 +452,8 @@ sub check_options {
|
||||
}
|
||||
if (defined($o_checkperf)) {
|
||||
@o_warn = split(/,/, $o_warn_opt);
|
||||
- if (defined($o_ext_checkperf) && ($#o_warn != 5)) {
|
||||
- print "6 warning levels for extended checks \n";
|
||||
+ if (defined($o_ext_checkperf) && (($#o_warn < 5) || ($#o_warn > 6))) {
|
||||
+ print "6 or 7 warning levels for extended checks err val: $#o_warn \n";
|
||||
print_usage();
|
||||
exit $ERRORS{"UNKNOWN"};
|
||||
}
|
||||
@@ -465,8 +465,8 @@ sub check_options {
|
||||
@o_crit = split(/,/, $o_crit_opt);
|
||||
|
||||
#verb(" $o_crit_opt :: $#o_crit : @o_crit");
|
||||
- if (defined($o_ext_checkperf) && ($#o_crit != 5)) {
|
||||
- print "6 critical levels for extended checks \n";
|
||||
+ if (defined($o_ext_checkperf) && (($#o_crit < 5) || ($#o_crit > 6))) {
|
||||
+ print "6 or 7 critical levels for extended checks err val: $#o_crit \n";
|
||||
print_usage();
|
||||
exit $ERRORS{"UNKNOWN"};
|
||||
}
|
||||
@@ -476,10 +476,18 @@ sub check_options {
|
||||
exit $ERRORS{"UNKNOWN"};
|
||||
}
|
||||
for (my $i = 0; $i <= $#o_warn; $i++) {
|
||||
- if (($o_crit[$i] != 0) && ($o_warn[$i] > $o_crit[$i])) {
|
||||
- print "Warning must be < Critical level \n";
|
||||
- print_usage();
|
||||
- exit $ERRORS{"UNKNOWN"};
|
||||
+ if ($i != 6) {
|
||||
+ if (($o_crit[$i] != 0) && ($o_warn[$i] > $o_crit[$i])) {
|
||||
+ print "Warning must be < Critical level \n";
|
||||
+ print_usage();
|
||||
+ exit $ERRORS{"UNKNOWN"};
|
||||
+ }
|
||||
+ } else {
|
||||
+ if (($o_crit[$i] != 0) && ($o_warn[$i] < $o_crit[$i])) {
|
||||
+ print "Warning must be > Critical level \n";
|
||||
+ print_usage();
|
||||
+ exit $ERRORS{"UNKNOWN"};
|
||||
+ }
|
||||
}
|
||||
}
|
||||
if ( (defined($o_meg) && defined($o_gig))
|
||||
@@ -946,6 +954,18 @@ sub check_options {
|
||||
}
|
||||
if ($l == 0 || $l == 1) { $print_out .= $speed_unit; }
|
||||
}
|
||||
+ if (defined($o_perfs) && defined($o_ext_checkperf)) {
|
||||
+ $print_out .= "/";
|
||||
+ if (defined($o_crit[6]) && ($o_crit[6] != 0) && ($speed_real < $o_crit[6])) {
|
||||
+ $final_status = 2;
|
||||
+ $print_out .= sprintf("CRIT %.0fbps", $speed_real);
|
||||
+ } elsif (defined($o_warn[6]) && ($o_warn[6] != 0) && ($speed_real < $o_warn[6])) {
|
||||
+ $final_status = ($final_status == 2) ? 2 : 1;
|
||||
+ $print_out .= sprintf("WARN %.0fbps", $speed_real);
|
||||
+ } else {
|
||||
+ $print_out .= sprintf("%.0fbps", $speed_real);
|
||||
+ }
|
||||
+ }
|
||||
$print_out .= ")";
|
||||
} else { # Return unknown when no data
|
||||
$print_out .= " No usable data on file (" . $n_rows . " rows) ";
|
||||
@@ -1039,7 +1059,10 @@ sub check_options {
|
||||
}
|
||||
if (defined($o_perfs)) {
|
||||
$speed_real = "" unless (defined($speed_real));
|
||||
- $perf_out .= "'" . $descr[$i] . "_speed_bps'=" . $speed_real . " ";
|
||||
+ $perf_out .= "'" . $descr[$i] . "_speed_bps'=" . $speed_real . ";";
|
||||
+ $perf_out .= defined($o_warn[6]) ? $o_warn[6] . ";" : ";";
|
||||
+ $perf_out .= defined($o_crit[6]) ? $o_crit[6] . ";" : ";";
|
||||
+ $perf_out .= "; ";
|
||||
}
|
||||
if (defined($o_weather) && $usable_data == 1) {
|
||||
$perf_out .= "in=" . sprintf("%.0f", $checkperf_out_raw[0]) . ";;;0;" . sprintf("%.0f", $speed_real / 8) . " ";
|
761
debian/patches/24_tcp_udp_ipv4_ipv6
vendored
Normal file
761
debian/patches/24_tcp_udp_ipv4_ipv6
vendored
Normal file
|
@ -0,0 +1,761 @@
|
|||
From 394ade3c6b5816c4cbca09750cb01622d474e508 Mon Sep 17 00:00:00 2001
|
||||
From: Patrick Grimm <patrick@lunatiki.de>
|
||||
Date: Sun, 10 Mar 2024 01:56:45 +0100
|
||||
Subject: [PATCH] add --protocol= setting tcp/udp and IPv4/IPv6 for
|
||||
boostedge/cpfw/css/css_main/env/int/linkproof_nhr/nsbox/vrrp/win
|
||||
|
||||
reworked the patches from
|
||||
5369da5d2b3e4351e04f016619736f7d03cbcdfd
|
||||
---
|
||||
plugins/check_snmp_boostedge.pl | 22 ++++++++++++++++++----
|
||||
plugins/check_snmp_cpfw.pl | 22 ++++++++++++++++++----
|
||||
plugins/check_snmp_css.pl | 22 ++++++++++++++++++----
|
||||
plugins/check_snmp_css_main.pl | 22 ++++++++++++++++++----
|
||||
plugins/check_snmp_env.pl | 22 ++++++++++++++++++----
|
||||
plugins/check_snmp_int.pl | 22 ++++++++++++++++++----
|
||||
plugins/check_snmp_linkproof_nhr.pl | 22 ++++++++++++++++++----
|
||||
plugins/check_snmp_nsbox.pl | 22 ++++++++++++++++++----
|
||||
plugins/check_snmp_vrrp.pl | 22 ++++++++++++++++++----
|
||||
plugins/check_snmp_win.pl | 19 ++++++++++++++++---
|
||||
10 files changed, 178 insertions(+), 39 deletions(-)
|
||||
|
||||
diff --git a/plugins/check_snmp_boostedge.pl b/plugins/check_snmp_boostedge.pl
|
||||
index 5eaca78..2284379 100755
|
||||
--- a/plugins/check_snmp_boostedge.pl
|
||||
+++ b/plugins/check_snmp_boostedge.pl
|
||||
@@ -43,6 +43,7 @@
|
||||
my $o_host = undef; # hostname
|
||||
my $o_community = undef; # community
|
||||
my $o_port = 161; # port
|
||||
+my $o_domain = 'udp/ipv4'; # protocol
|
||||
my $o_help = undef; # wan't some help ?
|
||||
my $o_verb = undef; # verbose mode
|
||||
my $o_version = undef; # print version
|
||||
@@ -121,6 +122,14 @@ sub help {
|
||||
<privproto> : Priv protocole (des|aes : default des)
|
||||
-P, --port=PORT
|
||||
SNMP port (Default 161)
|
||||
+--protocol=PROTOCOL
|
||||
+ Network protocol to be used
|
||||
+ ['udp/ipv4'] : UDP over IPv4
|
||||
+ 'udp/ipv6' : UDP over IPv6
|
||||
+ 'tcp/ipv4' : TCP over IPv4
|
||||
+ 'tcp/ipv6' : TCP over IPv6
|
||||
+
|
||||
+ Network protocol (Default udp/ipv4)
|
||||
-f, --perfparse, --perfdata
|
||||
Performance data output
|
||||
-t, --timeout=INTEGER
|
||||
@@ -144,6 +153,7 @@ sub check_options {
|
||||
'hostname:s' => \$o_host,
|
||||
'p:i' => \$o_port,
|
||||
'port:i' => \$o_port,
|
||||
+ 'protocol:s' => \$o_domain,
|
||||
'C:s' => \$o_community,
|
||||
'community:s' => \$o_community,
|
||||
'l:s' => \$o_login,
|
||||
@@ -252,7 +262,8 @@ sub check_options {
|
||||
-username => $o_login,
|
||||
-authpassword => $o_passwd,
|
||||
-authprotocol => $o_authproto,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
} else {
|
||||
verb("SNMPv3 AuthPriv login : $o_login, $o_authproto, $o_privproto");
|
||||
@@ -265,7 +276,8 @@ sub check_options {
|
||||
-authprotocol => $o_authproto,
|
||||
-privpassword => $o_privpass,
|
||||
-privprotocol => $o_privproto,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
}
|
||||
} else {
|
||||
@@ -278,7 +290,8 @@ sub check_options {
|
||||
-version => 2,
|
||||
-community => $o_community,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
} else {
|
||||
|
||||
@@ -288,7 +301,8 @@ sub check_options {
|
||||
-hostname => $o_host,
|
||||
-community => $o_community,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
}
|
||||
}
|
||||
diff --git a/plugins/check_snmp_cpfw.pl b/plugins/check_snmp_cpfw.pl
|
||||
index b29c3e9..5e3f7f5 100755
|
||||
--- a/plugins/check_snmp_cpfw.pl
|
||||
+++ b/plugins/check_snmp_cpfw.pl
|
||||
@@ -77,6 +77,7 @@
|
||||
my $o_community = undef; # community
|
||||
my $o_version2 = undef; # Version 2
|
||||
my $o_port = 161; # port
|
||||
+my $o_domain = 'udp/ipv4'; # protocol
|
||||
my $o_help = undef; # wan't some help ?
|
||||
my $o_verb = undef; # verbose mode
|
||||
my $o_version = undef; # print version
|
||||
@@ -154,6 +155,14 @@ sub help {
|
||||
performance data output (only works with -c)
|
||||
-P, --port=PORT
|
||||
SNMP port (Default 161)
|
||||
+--protocol=PROTOCOL
|
||||
+ Network protocol to be used
|
||||
+ ['udp/ipv4'] : UDP over IPv4
|
||||
+ 'udp/ipv6' : UDP over IPv6
|
||||
+ 'tcp/ipv4' : TCP over IPv4
|
||||
+ 'tcp/ipv6' : TCP over IPv6
|
||||
+
|
||||
+ Network protocol (Default udp/ipv4)
|
||||
-t, --timeout=INTEGER
|
||||
timeout for SNMP (Default: Nagios default)
|
||||
-V, --version
|
||||
@@ -175,6 +184,7 @@ sub check_options {
|
||||
'hostname:s' => \$o_host,
|
||||
'P:i' => \$o_port,
|
||||
'port:i' => \$o_port,
|
||||
+ 'protocol:s' => \$o_domain,
|
||||
'C:s' => \$o_community,
|
||||
'community:s' => \$o_community,
|
||||
'2' => \$o_version2,
|
||||
@@ -315,7 +325,8 @@ sub check_options {
|
||||
-port => $o_port,
|
||||
-authpassword => $o_passwd,
|
||||
-authprotocol => $o_authproto,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
} else {
|
||||
verb("SNMPv3 AuthPriv login : $o_login, $o_authproto, $o_privproto");
|
||||
@@ -328,7 +339,8 @@ sub check_options {
|
||||
-authprotocol => $o_authproto,
|
||||
-privpassword => $o_privpass,
|
||||
-privprotocol => $o_privproto,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
}
|
||||
} else {
|
||||
@@ -341,7 +353,8 @@ sub check_options {
|
||||
-version => 2,
|
||||
-community => $o_community,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
} else {
|
||||
|
||||
@@ -351,7 +364,8 @@ sub check_options {
|
||||
-hostname => $o_host,
|
||||
-community => $o_community,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
}
|
||||
}
|
||||
diff --git a/plugins/check_snmp_css.pl b/plugins/check_snmp_css.pl
|
||||
index 3f375b4..ab7d52f 100755
|
||||
--- a/plugins/check_snmp_css.pl
|
||||
+++ b/plugins/check_snmp_css.pl
|
||||
@@ -40,6 +40,7 @@
|
||||
my $o_host = undef; # hostname
|
||||
my $o_community = undef; # community
|
||||
my $o_port = 161; # port
|
||||
+my $o_domain = 'udp/ipv4'; # protocol
|
||||
my $o_help = undef; # wan't some help ?
|
||||
my $o_verb = undef; # verbose mode
|
||||
my $o_version = undef; # print version
|
||||
@@ -141,6 +142,14 @@ sub help {
|
||||
<privproto> : Priv protocole (des|aes : default des)
|
||||
-P, --port=PORT
|
||||
SNMP port (Default 161)
|
||||
+--protocol=PROTOCOL
|
||||
+ Network protocol to be used
|
||||
+ ['udp/ipv4'] : UDP over IPv4
|
||||
+ 'udp/ipv6' : UDP over IPv6
|
||||
+ 'tcp/ipv4' : TCP over IPv4
|
||||
+ 'tcp/ipv6' : TCP over IPv6
|
||||
+
|
||||
+ Network protocol (Default udp/ipv4)
|
||||
-f, --perfparse
|
||||
Perfparse compatible output
|
||||
-t, --timeout=INTEGER
|
||||
@@ -164,6 +173,7 @@ sub check_options {
|
||||
'hostname:s' => \$o_host,
|
||||
'p:i' => \$o_port,
|
||||
'port:i' => \$o_port,
|
||||
+ 'protocol:s' => \$o_domain,
|
||||
'C:s' => \$o_community,
|
||||
'community:s' => \$o_community,
|
||||
'l:s' => \$o_login,
|
||||
@@ -331,7 +341,8 @@ sub check_options {
|
||||
-username => $o_login,
|
||||
-authpassword => $o_passwd,
|
||||
-authprotocol => $o_authproto,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
} else {
|
||||
verb("SNMPv3 AuthPriv login : $o_login, $o_authproto, $o_privproto");
|
||||
@@ -344,7 +355,8 @@ sub check_options {
|
||||
-authprotocol => $o_authproto,
|
||||
-privpassword => $o_privpass,
|
||||
-privprotocol => $o_privproto,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
}
|
||||
} else {
|
||||
@@ -357,7 +369,8 @@ sub check_options {
|
||||
-version => 2,
|
||||
-community => $o_community,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
} else {
|
||||
|
||||
@@ -367,7 +380,8 @@ sub check_options {
|
||||
-hostname => $o_host,
|
||||
-community => $o_community,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
}
|
||||
}
|
||||
diff --git a/plugins/check_snmp_css_main.pl b/plugins/check_snmp_css_main.pl
|
||||
index 0d52694..a74bb31 100755
|
||||
--- a/plugins/check_snmp_css_main.pl
|
||||
+++ b/plugins/check_snmp_css_main.pl
|
||||
@@ -40,6 +40,7 @@
|
||||
my $o_host = undef; # hostname
|
||||
my $o_community = undef; # community
|
||||
my $o_port = 161; # port
|
||||
+my $o_domain = 'udp/ipv4'; # protocol
|
||||
my $o_help = undef; # wan't some help ?
|
||||
my $o_verb = undef; # verbose mode
|
||||
my $o_version = undef; # print version
|
||||
@@ -93,6 +94,14 @@ sub help {
|
||||
<privproto> : Priv protocole (des|aes : default des)
|
||||
-P, --port=PORT
|
||||
SNMP port (Default 161)
|
||||
+--protocol=PROTOCOL
|
||||
+ Network protocol to be used
|
||||
+ ['udp/ipv4'] : UDP over IPv4
|
||||
+ 'udp/ipv6' : UDP over IPv6
|
||||
+ 'tcp/ipv4' : TCP over IPv4
|
||||
+ 'tcp/ipv6' : TCP over IPv6
|
||||
+
|
||||
+ Network protocol (Default udp/ipv4)
|
||||
-t, --timeout=INTEGER
|
||||
timeout for SNMP in seconds (Default: 5)
|
||||
-V, --version
|
||||
@@ -114,6 +123,7 @@ sub check_options {
|
||||
'hostname:s' => \$o_host,
|
||||
'p:i' => \$o_port,
|
||||
'port:i' => \$o_port,
|
||||
+ 'protocol:s' => \$o_domain,
|
||||
'C:s' => \$o_community,
|
||||
'community:s' => \$o_community,
|
||||
'l:s' => \$o_login,
|
||||
@@ -210,7 +220,8 @@ sub check_options {
|
||||
-username => $o_login,
|
||||
-authpassword => $o_passwd,
|
||||
-authprotocol => $o_authproto,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
} else {
|
||||
verb("SNMPv3 AuthPriv login : $o_login, $o_authproto, $o_privproto");
|
||||
@@ -223,7 +234,8 @@ sub check_options {
|
||||
-authprotocol => $o_authproto,
|
||||
-privpassword => $o_privpass,
|
||||
-privprotocol => $o_privproto,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
}
|
||||
} else {
|
||||
@@ -236,7 +248,8 @@ sub check_options {
|
||||
-version => 2,
|
||||
-community => $o_community,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
} else {
|
||||
|
||||
@@ -246,7 +259,8 @@ sub check_options {
|
||||
-hostname => $o_host,
|
||||
-community => $o_community,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
}
|
||||
}
|
||||
diff --git a/plugins/check_snmp_env.pl b/plugins/check_snmp_env.pl
|
||||
index 8e15bc0..3624d4f 100755
|
||||
--- a/plugins/check_snmp_env.pl
|
||||
+++ b/plugins/check_snmp_env.pl
|
||||
@@ -172,6 +172,7 @@
|
||||
my $o_host = undef; # hostname
|
||||
my $o_community = undef; # community
|
||||
my $o_port = 161; # port
|
||||
+my $o_domain = 'udp/ipv4'; # protocol
|
||||
my $o_help = undef; # wan't some help ?
|
||||
my $o_verb = undef; # verbose mode
|
||||
my $o_version = undef; # print version
|
||||
@@ -242,6 +243,14 @@ sub help {
|
||||
<privproto> : Priv protocole (des|aes : default des)
|
||||
-P, --port=PORT
|
||||
SNMP port (Default 161)
|
||||
+--protocol=PROTOCOL
|
||||
+ Network protocol to be used
|
||||
+ ['udp/ipv4'] : UDP over IPv4
|
||||
+ 'udp/ipv6' : UDP over IPv6
|
||||
+ 'tcp/ipv4' : TCP over IPv4
|
||||
+ 'tcp/ipv6' : TCP over IPv6
|
||||
+
|
||||
+ Network protocol (Default udp/ipv4)
|
||||
-T, --type=cisco|nokia|bc|iron|foundry
|
||||
Environemental check :
|
||||
cisco : All Cisco equipements : voltage,temp,fan,power supply
|
||||
@@ -278,6 +287,7 @@ sub check_options {
|
||||
'hostname:s' => \$o_host,
|
||||
'p:i' => \$o_port,
|
||||
'port:i' => \$o_port,
|
||||
+ 'protocol:s' => \$o_domain,
|
||||
'C:s' => \$o_community,
|
||||
'community:s' => \$o_community,
|
||||
'l:s' => \$o_login,
|
||||
@@ -388,7 +398,8 @@ sub check_options {
|
||||
-username => $o_login,
|
||||
-authpassword => $o_passwd,
|
||||
-authprotocol => $o_authproto,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
} else {
|
||||
verb("SNMPv3 AuthPriv login : $o_login, $o_authproto, $o_privproto");
|
||||
@@ -401,7 +412,8 @@ sub check_options {
|
||||
-authprotocol => $o_authproto,
|
||||
-privpassword => $o_privpass,
|
||||
-privprotocol => $o_privproto,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
}
|
||||
} else {
|
||||
@@ -414,7 +426,8 @@ sub check_options {
|
||||
-version => 2,
|
||||
-community => $o_community,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
} else {
|
||||
|
||||
@@ -424,7 +437,8 @@ sub check_options {
|
||||
-hostname => $o_host,
|
||||
-community => $o_community,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
}
|
||||
}
|
||||
diff --git a/plugins/check_snmp_int.pl b/plugins/check_snmp_int.pl
|
||||
index 71f8d14..b1214e2 100755
|
||||
--- a/plugins/check_snmp_int.pl
|
||||
+++ b/plugins/check_snmp_int.pl
|
||||
@@ -62,6 +62,7 @@
|
||||
# Standard options
|
||||
my $o_host = undef; # hostname
|
||||
my $o_port = 161; # port
|
||||
+my $o_domain = 'udp/ipv4'; # protocol
|
||||
my $o_descr = undef; # description filter
|
||||
my $o_help = undef; # wan't some help ?
|
||||
my $o_admin = undef; # admin status instead of oper
|
||||
@@ -208,6 +209,14 @@ sub help {
|
||||
<privproto> : Priv protocole (des|aes : default des)
|
||||
-P, --port=PORT
|
||||
SNMP port (Default 161)
|
||||
+--protocol=PROTOCOL
|
||||
+ Network protocol to be used
|
||||
+ ['udp/ipv4'] : UDP over IPv4
|
||||
+ 'udp/ipv6' : UDP over IPv6
|
||||
+ 'tcp/ipv4' : TCP over IPv4
|
||||
+ 'tcp/ipv6' : TCP over IPv6
|
||||
+
|
||||
+ Network protocol (Default udp/ipv4)
|
||||
-n, --name=NAME
|
||||
Name in description OID (eth0, ppp0 ...).
|
||||
This is treated as a regexp : -n eth will match eth0,eth1,...
|
||||
@@ -296,6 +305,7 @@ sub check_options {
|
||||
'hostname:s' => \$o_host,
|
||||
'p:i' => \$o_port,
|
||||
'port:i' => \$o_port,
|
||||
+ 'protocol:s' => \$o_domain,
|
||||
'n:s' => \$o_descr,
|
||||
'name:s' => \$o_descr,
|
||||
'N' => \$o_use_ifname,
|
||||
@@ -536,7 +546,8 @@ sub check_options {
|
||||
-username => $o_login,
|
||||
-authpassword => $o_passwd,
|
||||
-authprotocol => $o_authproto,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
} else {
|
||||
verb("SNMPv3 AuthPriv login : $o_login, $o_authproto, $o_privproto");
|
||||
@@ -549,7 +560,8 @@ sub check_options {
|
||||
-authprotocol => $o_authproto,
|
||||
-privpassword => $o_privpass,
|
||||
-privprotocol => $o_privproto,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
}
|
||||
} else {
|
||||
@@ -562,7 +574,8 @@ sub check_options {
|
||||
-version => 2,
|
||||
-community => $o_community,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
} else {
|
||||
|
||||
@@ -572,7 +585,8 @@ sub check_options {
|
||||
-hostname => $o_host,
|
||||
-community => $o_community,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
}
|
||||
}
|
||||
diff --git a/plugins/check_snmp_linkproof_nhr.pl b/plugins/check_snmp_linkproof_nhr.pl
|
||||
index b6dba28..d83932e 100755
|
||||
--- a/plugins/check_snmp_linkproof_nhr.pl
|
||||
+++ b/plugins/check_snmp_linkproof_nhr.pl
|
||||
@@ -34,6 +34,7 @@
|
||||
my $o_host = undef; # hostname
|
||||
my $o_community = undef; # community
|
||||
my $o_port = 161; # port
|
||||
+my $o_domain = 'udp/ipv4'; # protocol
|
||||
my $o_help = undef; # wan't some help ?
|
||||
my $o_verb = undef; # verbose mode
|
||||
my $o_version = undef; # print version
|
||||
@@ -98,6 +99,14 @@ sub help {
|
||||
<privproto> : Priv protocole (des|aes : default des)
|
||||
-P, --port=PORT
|
||||
SNMP port (Default 161)
|
||||
+--protocol=PROTOCOL
|
||||
+ Network protocol to be used
|
||||
+ ['udp/ipv4'] : UDP over IPv4
|
||||
+ 'udp/ipv6' : UDP over IPv6
|
||||
+ 'tcp/ipv4' : TCP over IPv4
|
||||
+ 'tcp/ipv6' : TCP over IPv6
|
||||
+
|
||||
+ Network protocol (Default udp/ipv4)
|
||||
-f, --perfparse, --perfdata
|
||||
Performance data output
|
||||
-t, --timeout=INTEGER
|
||||
@@ -121,6 +130,7 @@ sub check_options {
|
||||
'hostname:s' => \$o_host,
|
||||
'p:i' => \$o_port,
|
||||
'port:i' => \$o_port,
|
||||
+ 'protocol:s' => \$o_domain,
|
||||
'C:s' => \$o_community,
|
||||
'community:s' => \$o_community,
|
||||
'l:s' => \$o_login,
|
||||
@@ -215,7 +225,8 @@ sub check_options {
|
||||
-username => $o_login,
|
||||
-authpassword => $o_passwd,
|
||||
-authprotocol => $o_authproto,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
} else {
|
||||
verb("SNMPv3 AuthPriv login : $o_login, $o_authproto, $o_privproto");
|
||||
@@ -228,7 +239,8 @@ sub check_options {
|
||||
-authprotocol => $o_authproto,
|
||||
-privpassword => $o_privpass,
|
||||
-privprotocol => $o_privproto,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
}
|
||||
} else {
|
||||
@@ -241,7 +253,8 @@ sub check_options {
|
||||
-version => 2,
|
||||
-community => $o_community,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
} else {
|
||||
|
||||
@@ -251,7 +264,8 @@ sub check_options {
|
||||
-hostname => $o_host,
|
||||
-community => $o_community,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
}
|
||||
}
|
||||
diff --git a/plugins/check_snmp_nsbox.pl b/plugins/check_snmp_nsbox.pl
|
||||
index 97da635..3e7bfcb 100755
|
||||
--- a/plugins/check_snmp_nsbox.pl
|
||||
+++ b/plugins/check_snmp_nsbox.pl
|
||||
@@ -42,6 +42,7 @@
|
||||
my $o_host = undef; # hostname
|
||||
my $o_community = undef; # community
|
||||
my $o_port = 161; # port
|
||||
+my $o_domain = 'udp/ipv4'; # protocol
|
||||
my $o_help = undef; # wan't some help ?
|
||||
my $o_verb = undef; # verbose mode
|
||||
my $o_version = undef; # print version
|
||||
@@ -125,6 +126,14 @@ sub help {
|
||||
number of diode and vhost that must be up.
|
||||
-P, --port=PORT
|
||||
SNMP port (Default 161)
|
||||
+--protocol=PROTOCOL
|
||||
+ Network protocol to be used
|
||||
+ ['udp/ipv4'] : UDP over IPv4
|
||||
+ 'udp/ipv6' : UDP over IPv6
|
||||
+ 'tcp/ipv4' : TCP over IPv4
|
||||
+ 'tcp/ipv6' : TCP over IPv6
|
||||
+
|
||||
+ Network protocol (Default udp/ipv4)
|
||||
-f, --perfparse, --perfdata
|
||||
Performance data output
|
||||
-t, --timeout=INTEGER
|
||||
@@ -148,6 +157,7 @@ sub check_options {
|
||||
'hostname:s' => \$o_host,
|
||||
'p:i' => \$o_port,
|
||||
'port:i' => \$o_port,
|
||||
+ 'protocol:s' => \$o_domain,
|
||||
'C:s' => \$o_community,
|
||||
'community:s' => \$o_community,
|
||||
'l:s' => \$o_login,
|
||||
@@ -270,7 +280,8 @@ sub check_options {
|
||||
-username => $o_login,
|
||||
-authpassword => $o_passwd,
|
||||
-authprotocol => $o_authproto,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
} else {
|
||||
verb("SNMPv3 AuthPriv login : $o_login, $o_authproto, $o_privproto");
|
||||
@@ -283,7 +294,8 @@ sub check_options {
|
||||
-authprotocol => $o_authproto,
|
||||
-privpassword => $o_privpass,
|
||||
-privprotocol => $o_privproto,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
}
|
||||
} else {
|
||||
@@ -296,7 +308,8 @@ sub check_options {
|
||||
-version => 2,
|
||||
-community => $o_community,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
} else {
|
||||
|
||||
@@ -306,7 +319,8 @@ sub check_options {
|
||||
-hostname => $o_host,
|
||||
-community => $o_community,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
}
|
||||
}
|
||||
diff --git a/plugins/check_snmp_vrrp.pl b/plugins/check_snmp_vrrp.pl
|
||||
index b6d4d44..f9c19ec 100755
|
||||
--- a/plugins/check_snmp_vrrp.pl
|
||||
+++ b/plugins/check_snmp_vrrp.pl
|
||||
@@ -89,6 +89,7 @@
|
||||
my $o_community = undef; # community
|
||||
my $o_version2 = undef; #use snmp v2c
|
||||
my $o_port = 161; # port
|
||||
+my $o_domain = 'udp/ipv4'; # protocol
|
||||
my $o_help = undef; # wan't some help ?
|
||||
my $o_verb = undef; # verbose mode
|
||||
my $o_version = undef; # print version
|
||||
@@ -147,6 +148,14 @@ sub help {
|
||||
<privproto> : Priv protocole (des|aes : default des)
|
||||
-P, --port=PORT
|
||||
SNMP port (Default 161)
|
||||
+--protocol=PROTOCOL
|
||||
+ Network protocol to be used
|
||||
+ ['udp/ipv4'] : UDP over IPv4
|
||||
+ 'udp/ipv6' : UDP over IPv6
|
||||
+ 'tcp/ipv4' : TCP over IPv4
|
||||
+ 'tcp/ipv6' : TCP over IPv6
|
||||
+
|
||||
+ Network protocol (Default udp/ipv4)
|
||||
-T, --type=<nokia|alteon|lp|nsc|ipso>
|
||||
Type of vrrp router to check
|
||||
nokia (default) : Nokia vrrp. Should be working for most vrrp routers
|
||||
@@ -187,6 +196,7 @@ sub check_options {
|
||||
'hostname:s' => \$o_host,
|
||||
'p:i' => \$o_port,
|
||||
'port:i' => \$o_port,
|
||||
+ 'protocol:s' => \$o_domain,
|
||||
'C:s' => \$o_community,
|
||||
'community:s' => \$o_community,
|
||||
't:i' => \$o_timeout,
|
||||
@@ -317,7 +327,8 @@ sub check_options {
|
||||
-authpassword => $o_passwd,
|
||||
-authprotocol => $o_authproto,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
} else {
|
||||
verb("SNMPv3 AuthPriv login : $o_login, $o_authproto, $o_privproto");
|
||||
@@ -330,7 +341,8 @@ sub check_options {
|
||||
-privpassword => $o_privpass,
|
||||
-privprotocol => $o_privproto,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
}
|
||||
} else {
|
||||
@@ -343,7 +355,8 @@ sub check_options {
|
||||
-version => 2,
|
||||
-community => $o_community,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
} else {
|
||||
|
||||
@@ -353,7 +366,8 @@ sub check_options {
|
||||
-hostname => $o_host,
|
||||
-community => $o_community,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
}
|
||||
}
|
||||
diff --git a/plugins/check_snmp_win.pl b/plugins/check_snmp_win.pl
|
||||
index c5cb573..1240b46 100755
|
||||
--- a/plugins/check_snmp_win.pl
|
||||
+++ b/plugins/check_snmp_win.pl
|
||||
@@ -50,6 +50,7 @@
|
||||
my $o_host = undef; # hostname
|
||||
my $o_community = undef; # community
|
||||
my $o_port = 161; # port
|
||||
+my $o_domain = 'udp/ipv4'; # protocol
|
||||
my $o_version2 = undef; # use snmp v2c
|
||||
my $o_descr = undef; # description filter
|
||||
my @o_descrL = undef; # Service descriprion list.
|
||||
@@ -115,6 +116,14 @@ sub help {
|
||||
Password for snmpv3 authentication
|
||||
-p, --port=PORT
|
||||
SNMP port (Default 161)
|
||||
+--protocol=PROTOCOL
|
||||
+ Network protocol to be used
|
||||
+ ['udp/ipv4'] : UDP over IPv4
|
||||
+ 'udp/ipv6' : UDP over IPv6
|
||||
+ 'tcp/ipv4' : TCP over IPv4
|
||||
+ 'tcp/ipv6' : TCP over IPv6
|
||||
+
|
||||
+ Network protocol (Default udp/ipv4)
|
||||
-T, --type=service
|
||||
Check type :
|
||||
- service (default) checks service
|
||||
@@ -173,6 +182,7 @@ sub check_options {
|
||||
'hostname:s' => \$o_host,
|
||||
'p:i' => \$o_port,
|
||||
'port:i' => \$o_port,
|
||||
+ 'protocol:s' => \$o_domain,
|
||||
'C:s' => \$o_community,
|
||||
'community:s' => \$o_community,
|
||||
'l:s' => \$o_login,
|
||||
@@ -265,7 +275,8 @@ sub check_options {
|
||||
-authpassword => $o_passwd,
|
||||
-authprotocol => 'md5',
|
||||
-privpassword => $o_passwd,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
} else {
|
||||
if (defined($o_version2)) {
|
||||
@@ -276,7 +287,8 @@ sub check_options {
|
||||
-version => 2,
|
||||
-community => $o_community,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
} else {
|
||||
|
||||
@@ -285,7 +297,8 @@ sub check_options {
|
||||
-hostname => $o_host,
|
||||
-community => $o_community,
|
||||
-port => $o_port,
|
||||
- -timeout => $o_timeout
|
||||
+ -timeout => $o_timeout,
|
||||
+ -domain => $o_domain
|
||||
);
|
||||
}
|
||||
}
|
82
debian/patches/25_check_snmp_int_add_metrik
vendored
Normal file
82
debian/patches/25_check_snmp_int_add_metrik
vendored
Normal file
|
@ -0,0 +1,82 @@
|
|||
From a0f606c2c29d1f5588fab0b464a7e905f3872255 Mon Sep 17 00:00:00 2001
|
||||
From: Patrick Grimm <patrick@lunatiki.de>
|
||||
Date: Mon, 11 Mar 2024 18:28:15 +0100
|
||||
Subject: [PATCH] add metrik for Interface speed K|M|G Bits/s and more comments
|
||||
|
||||
---
|
||||
doc/04-Plugins.md | 2 ++
|
||||
plugins/check_snmp_int.pl | 20 ++++++++++++--------
|
||||
2 files changed, 14 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/doc/04-Plugins.md b/doc/04-Plugins.md
|
||||
index bf2a593..21b672a 100644
|
||||
--- a/doc/04-Plugins.md
|
||||
+++ b/doc/04-Plugins.md
|
||||
@@ -211,10 +211,12 @@ Usage: ./check_snmp_int.pl [-v] -H <host> -C <snmp_community> [-2] | (-l login -
|
||||
warning level for input / output bandwidth (0 for no warning)
|
||||
unit depends on B,M,G,u options and interface speed is in bps
|
||||
warning for error & discard input / output in error/min (need -q)
|
||||
+ warning level for interface speed only in K|M|G Bits/s (0 for no warning)
|
||||
-c, --critical=input,output[,error in,error out,discard in,discard out,interface speed]
|
||||
critical level for input / output bandwidth (0 for no critical)
|
||||
unit depends on B,M,G,u options and interface speed is in bps
|
||||
critical for error & discard input / output in error/min (need -q)
|
||||
+ critical level for interface speed only in K|M|G Bits/s (0 for no critical)
|
||||
-s, --short=int
|
||||
Make the output shorter : only the first <n> chars of the interface(s)
|
||||
If the number is negative, then get the <n> LAST caracters.
|
||||
diff --git a/plugins/check_snmp_int.pl b/plugins/check_snmp_int.pl
|
||||
index d978c66..fd45a61 100755
|
||||
--- a/plugins/check_snmp_int.pl
|
||||
+++ b/plugins/check_snmp_int.pl
|
||||
@@ -266,10 +266,12 @@ sub help {
|
||||
warning level for input / output bandwidth (0 for no warning)
|
||||
unit depends on B,M,G,u options
|
||||
warning for error & discard input / output in error/min (need -q)
|
||||
+ warning level for interface speed only in K|M|G Bits/s (0 for no warning)
|
||||
-c, --critical=input,output[,error in,error out,discard in,discard out,interface speed]
|
||||
critical level for input / output bandwidth (0 for no critical)
|
||||
unit depends on B,M,G,u options
|
||||
critical for error & discard input / output in error/min (need -q)
|
||||
+ critical level for interface speed only in K|M|G Bits/s (0 for no critical)
|
||||
-s, --short=int
|
||||
Make the output shorter : only the first <n> chars of the interface(s)
|
||||
If the number is negative, then get the <n> LAST caracters.
|
||||
@@ -955,16 +957,18 @@ sub check_options {
|
||||
if ($l == 0 || $l == 1) { $print_out .= $speed_unit; }
|
||||
}
|
||||
if (defined($o_perfs) && defined($o_ext_checkperf)) {
|
||||
+ my $warn_factor = (defined($o_meg)) ? 1000000 : (defined($o_gig)) ? 1000000000 : 1000;
|
||||
$print_out .= "/";
|
||||
- if (defined($o_crit[6]) && ($o_crit[6] != 0) && ($speed_real < $o_crit[6])) {
|
||||
+ if (defined($o_crit[6]) && ($o_crit[6] != 0) && ($speed_real / $warn_factor < $o_crit[6])) {
|
||||
$final_status = 2;
|
||||
- $print_out .= sprintf("CRIT %.0fbps", $speed_real);
|
||||
- } elsif (defined($o_warn[6]) && ($o_warn[6] != 0) && ($speed_real < $o_warn[6])) {
|
||||
+ $print_out .= sprintf("CRIT %.0f", $speed_real / $warn_factor);
|
||||
+ } elsif (defined($o_warn[6]) && ($o_warn[6] != 0) && ($speed_real / $warn_factor < $o_warn[6])) {
|
||||
$final_status = ($final_status == 2) ? 2 : 1;
|
||||
- $print_out .= sprintf("WARN %.0fbps", $speed_real);
|
||||
+ $print_out .= sprintf("WARN %.0f", $speed_real / $warn_factor);
|
||||
} else {
|
||||
- $print_out .= sprintf("%.0fbps", $speed_real);
|
||||
+ $print_out .= sprintf("%.0f", $speed_real / $warn_factor);
|
||||
}
|
||||
+ $print_out .= (defined($o_meg)) ? "Mbps" : (defined($o_gig)) ? "Gbps" : "kbps";
|
||||
}
|
||||
$print_out .= ")";
|
||||
} else { # Return unknown when no data
|
||||
@@ -1058,10 +1062,10 @@ sub check_options {
|
||||
$perf_out .= "'" . $descr[$i] . "_out_discard'=" . $$result{ $oid_perf_outdisc[$i] } . "c ";
|
||||
}
|
||||
if (defined($o_perfs)) {
|
||||
- $speed_real = "" unless (defined($speed_real));
|
||||
+ my $warn_factor = (defined($o_meg)) ? 1000000 : (defined($o_gig)) ? 1000000000 : 1000;
|
||||
$perf_out .= "'" . $descr[$i] . "_speed_bps'=" . $speed_real . ";";
|
||||
- $perf_out .= defined($o_warn[6]) ? $o_warn[6] . ";" : ";";
|
||||
- $perf_out .= defined($o_crit[6]) ? $o_crit[6] . ";" : ";";
|
||||
+ $perf_out .= defined($o_warn[6]) ? $o_warn[6] * $warn_factor . ";" : ";";
|
||||
+ $perf_out .= defined($o_crit[6]) ? $o_crit[6] * $warn_factor . ";" : ";";
|
||||
$perf_out .= "; ";
|
||||
}
|
||||
if (defined($o_weather) && $usable_data == 1) {
|
3
debian/patches/series
vendored
3
debian/patches/series
vendored
|
@ -11,5 +11,8 @@
|
|||
20_check_snmp_int_avaid_huge_amount_of_regex
|
||||
21_check_snmp_load_update_fortiswitch_and_fortigate4.3
|
||||
22_check_snmp_storage_fix_space_btrfs
|
||||
23_check_snmp_int_interface_speed
|
||||
24_tcp_udp_ipv4_ipv6
|
||||
25_check_snmp_int_add_metrik
|
||||
50_disable_epn
|
||||
51_fix_privacy_doc
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue