diff --git a/check_nwc_health/check_nwc_health-7.6/AUTHORS b/check_nwc_health/check_nwc_health-7.12.1.3/AUTHORS similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/AUTHORS rename to check_nwc_health/check_nwc_health-7.12.1.3/AUTHORS diff --git a/check_nwc_health/check_nwc_health-7.6/COPYING b/check_nwc_health/check_nwc_health-7.12.1.3/COPYING similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/COPYING rename to check_nwc_health/check_nwc_health-7.12.1.3/COPYING diff --git a/check_nwc_health/check_nwc_health-7.6/ChangeLog b/check_nwc_health/check_nwc_health-7.12.1.3/ChangeLog similarity index 88% rename from check_nwc_health/check_nwc_health-7.6/ChangeLog rename to check_nwc_health/check_nwc_health-7.12.1.3/ChangeLog index b0021e6..79b2f97 100644 --- a/check_nwc_health/check_nwc_health-7.6/ChangeLog +++ b/check_nwc_health/check_nwc_health-7.12.1.3/ChangeLog @@ -1,3 +1,92 @@ +* 2020-09-08 7.12.1.3 + fix a bug in mode count-routes, update glplugin +* 2020-07-13 7.12.1.2 + improve output for connect-vips +* 2020-07-13 7.12.1.1 + bugfix in UCD-MIB swap +* 2020-07-10 7.12.1 + try to fallback to ucd if neither sysUptime nor sysDescr exist +* 2020-06-04 7.12 + add mode watch-vips and connect-vips for F5 +* 2020-06-02 7.11.1 + check the number of nodes in a Fortigate cluster +* 2020-05-21 7.11 + add bgp4 modes for arista, use 2nd context for cisco bgp4 +* 2020-05-19 7.10.4.1 + fix a typo +* 2020-05-05 7.10.4 + check increase of sessions for Cisco + (detect freeze with --mode vpn-sessions --criticalx sessions_per_sec=0.001:) + add AVM 7580 +* 2020-03-20 7.10.3 + add mode vpn-sessions (IOS and ASA) +* 2020-03-16 7.10.2.1 + blacklist nfs-mounts in hrDeviceDiskStorage +* 2020-03-10 7.10.2 + fix HP Aruba checks, add nore from ENTITY-SENSOR-MIB +* 2020-02-20 7.10.1.9 + fix a bug in interface-etherstats for OLD-CISCO-INTERFACES-MIB +* 2020-01-21 7.10.1.8 + fix a bug in Cisco memory, for Cisco emulation mode of Bel VPN Gate +* 2020-01-18 7.10.1.7 + issue #229 fix redundant argument in sprintf + issue #228 fix operstatus in linuxlocal +* 2020-01-16 7.10.1.6 + fix a bug in verbose mode if --nosensors is used +* 2019-12-06 7.10.1.5 + update GLPlugin, reduce default maxrepetitions to 20 +* 2019-12-05 7.10.1.4 + reduce maxrepetitions for f5 sysCpuTable and ifTables +* 2019-12-04 7.10.1.3 + add --nosensors which skips endless entSensor[Threshold]Table for Nexuses +* 2019-11-25 7.10.1.2 + fix a division by 0 for cisco reserved memory +* 2019-10-07 7.10.1.1 + fix a bug in cisco wlan accesspoint-modes (InetAddrType) +* 2019-10-04 7.10.1 + add session-usage for palo alto +* 2019-08-30 7.10.0.7 + update glplugin, more nexus hardware-health improvements +* 2019-08-29 7.10.0.6 + reduce runtime for nexus hardware-health +* 2019-08-20 7.10.0.5 + fix EIGRP filtering +* 2019-07-29 7.10.0.4.1 + fix a bug in fortigate ha-role +* 2019-07-22 7.10.0.4 + fix a bug in interface-uptime +* 2019-07-19 7.10.0.3 + fix a bug in interface-uptime +* 2019-07-07 7.10.0.2 + fix a bug in mode ha-role for Fortigate +* 2019-06-25 7.10.0.1 + fix a bug in bgp/route modes for the non-standalone version (InetAddressMaker) +* 2019-06-21 7.10 + remove duplicate routes (ip-table + inet-table) + --report long+address shows ip addresses for interfaces +* 2019-06-14 7.9.0.4 + finish barracuda ha-role mode +* 2019-06-14 7.9.0.3 + detect f5 firmware versions 14+ +* 2019-06-12 7.9.0.2 + fix routes. inetCidrRouteTable does not really replace ipCidrRouteTable +* 2019-06-12 7.9.0.1 + fallback to BGP4-MIB if CISCO-BGP4-MIB is incomplete +* 2019-06-11 7.9 + add EIGRP + fix ASA user/connection/session-count +* 2019-06-05 7.8 + GLPLugin with better ip4/ip6 handling + fix huawei subclasses + interfaces --name filter expression can contain _adminup_ as a secondary + filter + route modes can handle v6 + use OSPFV3-MIB, support v6 + add CISCO-BGP4-MIB, support v6 +* 2019-04-12 7.7 + add Barracuda +* 2019-04-12 7.6.1 + add mode count-connections for F5 * 2019-03-20 7.6 add mode watch-ospf-neighbors * 2019-02-19 7.5.0.1 diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin.pm similarity index 99% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin.pm index fc227db..8407c9a 100644 --- a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin.pm @@ -20,7 +20,7 @@ eval { $Data::Dumper::Sparseseen = 1; }; our $AUTOLOAD; -*VERSION = \'3.2.5'; +*VERSION = \'3.2.26.2'; use constant { OK => 0, WARNING => 1, CRITICAL => 2, UNKNOWN => 3 }; @@ -1453,7 +1453,8 @@ sub protect_value { # if the device gives us an clearly wrong value, simply use the last value. my $laststate = $self->load_state(name => 'protect_'.$ident.'_'.$key); $self->debug(sprintf "self->{%s} is %s and invalid for the %dth time", - $key, $self->{$key}, $laststate->{exception} + 1); + $key, defined $self->{$key} ? $self->{$key} : "", + $laststate->{exception} + 1); if ($laststate->{exception} <= 5) { # but only 5 times. # if the error persists, somebody has to check the device. diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/Commandline.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/Commandline.pm similarity index 99% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/Commandline.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/Commandline.pm index aaa7ecd..a8ddfe4 100644 --- a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/Commandline.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/Commandline.pm @@ -417,6 +417,7 @@ sub nagios_exit { $output; } if (! exists $self->{suppress_messages}) { + $output =~ s/[^[:ascii:]]//g; print $output; } exit $code; diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/Commandline/Extraopts.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/Commandline/Extraopts.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/Commandline/Extraopts.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/Commandline/Extraopts.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/Commandline/Getopt.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/Commandline/Getopt.pm similarity index 98% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/Commandline/Getopt.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/Commandline/Getopt.pm index 0b9b0f0..c395cb3 100644 --- a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/Commandline/Getopt.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/Commandline/Getopt.pm @@ -170,8 +170,9 @@ sub getopts { $_->{spec} =~ /^([\w\-]+)/; my $aliasfield = $1; next if $self->{opts}->{$field}; + $self->{opts}->{$field} = $self->{opts}->{$aliasfield}; *{"$field"} = sub { - return $self->{opts}->{$aliasfield}; + return $self->{opts}->{$field}; }; } foreach (grep { exists $_->{decode} } @{$self->{_args}}) { diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/Item.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/Item.pm new file mode 100644 index 0000000..3f35a24 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/Item.pm @@ -0,0 +1,70 @@ +package Monitoring::GLPlugin::Item; +our @ISA = qw(Monitoring::GLPlugin); + +use strict; + +sub new { + my ($class, %params) = @_; + my $self = { + blacklisted => 0, + info => undef, + extendedinfo => undef, + }; + bless $self, $class; + $self->init(%params); + return $self; +} + +sub check { + my ($self, $lists) = @_; + my @lists = $lists ? @{$lists} : grep { ref($self->{$_}) eq "ARRAY" } keys %{$self}; + foreach my $list (@lists) { + $self->add_info('checking '.$list); + foreach my $element (@{$self->{$list}}) { + $element->blacklist() if $self->is_blacklisted(); + $element->check(); + } + } +} + +sub init_subsystems { + my ($self, $subsysref) = @_; + foreach (@{$subsysref}) { + my ($subsys, $class) = @{$_}; + $self->{$subsys} = $class->new() + if (! $self->opts->subsystem || grep { + $_ eq $subsys; + } map { + s/^\s+|\s+$//g; + $_; + } split /,/, $self->opts->subsystem); + } +} + +sub check_subsystems { + my ($self) = @_; + my @subsystems = grep { $_ =~ /.*_subsystem$/ } keys %{$self}; + foreach (@subsystems) { + $self->{$_}->check(); + } + $self->reduce_messages_short(join(", ", + map { + sprintf "%s working fine", $_; + } map { + s/^\s+|\s+$//g; + $_; + } split /,/, $self->opts->subsystem + )) if $self->opts->subsystem; +} + +sub dump_subsystems { + my ($self) = @_; + my @subsystems = grep { $_ =~ /.*_subsystem$/ } keys %{$self}; + foreach (@subsystems) { + $self->{$_}->dump(); + } +} + +1; + +__END__ diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP.pm similarity index 94% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP.pm index b16f6d3..5b85f8f 100644 --- a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP.pm @@ -223,6 +223,15 @@ sub add_snmp_args { required => 0, decode => "rfc3986", ); + $self->add_arg( + spec => '--join-communities', + help => '--join-communities + It --community2 is used, run the query with community, then community2 + and add up both results. The default is to use community for the initial + handshake and community2 for querying (bgp and ospf)', + required => 0, + default => 0, + ); $self->add_arg( spec => 'snmpwalk=s', help => '--snmpwalk @@ -824,7 +833,8 @@ sub init { my $confirmed = {}; foreach my $mib (keys %{$Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids}) { foreach my $sym (keys %{$Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{$mib}}) { - if (my $obj = $self->get_snmp_object($mib, $sym)) { + my $obj = $self->get_snmp_object($mib, $sym); + if (defined $obj) { my $oid = $Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{$mib}->{$sym}; if (exists $unknowns->{$oid}) { $confirmed->{$oid} = sprintf '%s::%s = %s', $mib, $sym, $obj; @@ -1028,7 +1038,7 @@ sub check_snmp_and_model { scalar localtime (time - $self->{uptime})); $Monitoring::GLPlugin::SNMP::uptime = $self->{uptime}; $self->debug('whoami: '.$self->{productname}); - last; + return; } } if (! $mein_lieber_freund_und_kupferstecher) { @@ -1147,6 +1157,11 @@ sub establish_snmp_session { } else { my $max_msg_size = $session->max_msg_size(); #$session->max_msg_size(4 * $max_msg_size); + if ($self->opts->protocol eq "1") { + $Monitoring::GLPlugin::SNMP::maxrepetitions = 0; + } else { + $Monitoring::GLPlugin::SNMP::maxrepetitions = 20; + } $Monitoring::GLPlugin::SNMP::max_msg_size = $max_msg_size; $Monitoring::GLPlugin::SNMP::session = $session; } @@ -1234,6 +1249,24 @@ sub mult_snmp_max_msg_size { $Monitoring::GLPlugin::SNMP::session->max_msg_size($factor * $Monitoring::GLPlugin::SNMP::session->max_msg_size()) if $Monitoring::GLPlugin::SNMP::session; } +sub bulk_baeh_reset { + my ($self, $maxrepetitions) = @_; + $self->reset_snmp_max_msg_size(); + $Monitoring::GLPlugin::SNMP::maxrepetitions = + $Monitoring::GLPlugin::SNMP::session->max_msg_size() * 0.017; +} + +sub bulk_is_baeh { + my ($self, $maxrepetitions) = @_; + $maxrepetitions ||= 1; + $Monitoring::GLPlugin::SNMP::maxrepetitions = int($maxrepetitions); +} + +sub get_max_repetitions { + my ($self) = @_; + return $Monitoring::GLPlugin::SNMP::maxrepetitions; +} + sub no_such_model { my ($self) = @_; printf "Model %s is not implemented\n", $self->{productname}; @@ -1278,9 +1311,10 @@ sub ago_sysuptime { my ($self, $eventtime) = @_; # if there is an oid containing the value of sysUptime at the time of # a certain event (e.g. cipSecFailTime), this method returns the - # time that has passed since the event. + # time in seconds that has passed since the event. # sysUptime overflows at 2**32, so it is possible that the eventtime is # bigger than sysUptime + # the eventtime value must come as 1/100s, do not normalize it before. # # 0-----------------|---------------X # event=2Mio sysUptime=5.5Mio @@ -1292,11 +1326,10 @@ sub ago_sysuptime { # event happened (100k + (2**32 - 2Mio)) seconds ago # my $sysUptime = $self->get_snmp_object('MIB-2-MIB', 'sysUpTime', 0); - $sysUptime /= 100; if ($eventtime > $sysUptime) { - return $sysUptime + (2**32 - $eventtime); + return ($sysUptime + (2**32 - $eventtime)) / 100; } else { - return $sysUptime - $eventtime; + return ($sysUptime - $eventtime) / 100; } } @@ -1358,58 +1391,67 @@ sub require_mib { } sub implements_mib { - my ($self, $mib) = @_; + my ($self, $mib, $table) = @_; $self->require_mib($mib); if (! exists $Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{$mib}) { return 0; } - my $sysobj = $self->get_snmp_object('MIB-2-MIB', 'sysObjectID', 0); - $sysobj =~ s/^\.// if $sysobj; - if ($sysobj && $sysobj eq $Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{$mib}) { - $self->debug(sprintf "implements %s (sysobj exact)", $mib); - return 1; - } - if ($sysobj && $Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{$mib} eq - substr $sysobj, 0, length $Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{$mib}) { - $self->debug(sprintf "implements %s (sysobj)", $mib); - return 1; + if (! $table) { + my $sysobj = $self->get_snmp_object('MIB-2-MIB', 'sysObjectID', 0); + $sysobj =~ s/^\.// if $sysobj; + if ($sysobj && $sysobj eq $Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{$mib}) { + $self->debug(sprintf "implements %s (sysobj exact)", $mib); + return 1; + } + if ($sysobj && $Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{$mib} eq + substr $sysobj, 0, length $Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{$mib}) { + $self->debug(sprintf "implements %s (sysobj)", $mib); + return 1; + } } + + my $check_oid = $table ? + $Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{$mib}->{$table} : + $Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{$mib}; + # some mibs are only composed of tables my $traces; if ($self->opts->snmpwalk) { - my @matches; + my @matches; # exact match - push(@matches, @{[map { - $_, $self->rawdata->{$_} - } grep { - $_ eq $Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{$mib} - } keys %{$self->rawdata}]}); - - # partial match (add trailing dot) - my $check = $Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{$mib}; - $check =~ s/\.?$/./; - push(@matches, @{[map { - $_, $self->rawdata->{$_} + push(@matches, @{[map { + $_, $self->rawdata->{$_} } grep { - substr($_, 0, length($check)) eq $check - } keys %{$self->rawdata}]}); - $traces = {@matches}; + $_ eq $check_oid + } keys %{$self->rawdata}]}); + + # partial match (add trailing dot) + $check_oid =~ s/\.?$/./; + push(@matches, @{[map { + $_, $self->rawdata->{$_} + } grep { + substr($_, 0, length($check_oid)) eq $check_oid + } keys %{$self->rawdata}]}); + $traces = {@matches}; } else { my %params = ( -varbindlist => [ - $Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{$mib} + $check_oid ] ); if ($Monitoring::GLPlugin::SNMP::session->version() == 3) { $params{-contextengineid} = $self->opts->contextengineid if $self->opts->contextengineid; $params{-contextname} = $self->opts->contextname if $self->opts->contextname; } + my $timeout = $Monitoring::GLPlugin::SNMP::session->timeout(); + $Monitoring::GLPlugin::SNMP::session->timeout(10); $traces = $Monitoring::GLPlugin::SNMP::session->get_next_request(%params); + $Monitoring::GLPlugin::SNMP::session->timeout($timeout); } if ($traces && # must find oids following to the ident-oid ! exists $traces->{$Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{$mib}} && # must not be the ident-oid grep { # following oid is inside this tree - substr($_, 0, length($Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{$mib})) eq $Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{$mib}; + substr($_, 0, length($check_oid)) eq $check_oid } keys %{$traces}) { $self->debug(sprintf "implements %s (found traces)", $mib); return 1; @@ -1501,8 +1543,15 @@ sub create_entry_cache_file { } sub update_entry_cache { - my ($self, $force, $mib, $table, $key_attrs) = @_; + my ($self, $force, $mib, $table, $key_attrs, $last_change) = @_; + $self->debug(sprintf "last change of %s::%s was %s", + $mib, $table, scalar localtime $last_change) if $last_change; my $update_deadline = time - 3600; + if ($last_change) { + # epoch timestamp, which is a hint when some table was last updated + $update_deadline = ($last_change + 60) + if $last_change > $update_deadline; + } my $must_update = 0; if (ref($key_attrs) ne "ARRAY") { if ($key_attrs eq 'flat_indices') { @@ -1792,12 +1841,13 @@ sub get_snmp_table_objects { $rows ||= []; $self->require_mib($mib); my @entries = (); - my $augmenting_table; + my @augmenting = (); + my @augmenting_tables = (); my $sym_lookup = {}; $self->debug(sprintf "get_snmp_table_objects %s %s", $mib, $table); if ($table =~ /^(.*?)\+(.*)/) { $table = $1; - $augmenting_table = $2; + @augmenting_tables = split(/\+/, $2); } my $entry = $table; $entry =~ s/Table/Entry/g; @@ -1818,7 +1868,7 @@ sub get_snmp_table_objects { my $augmenting_tableoid = undef; my @columns = $self->get_table_row_oids($mib, $entry, $rows, $sym_lookup); my @augmenting_columns = (); - if($augmenting_table) { + foreach my $augmenting_table (@augmenting_tables) { my $augmenting_entry = $augmenting_table; $augmenting_entry =~ s/Table/Entry/g; if (! exists $Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{$mib}->{$augmenting_entry}) { @@ -1826,12 +1876,14 @@ sub get_snmp_table_objects { $augmenting_entry = $augmenting_table; $augmenting_entry =~ s/Table/TableEntry/g; if (! exists $Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{$mib}->{$augmenting_entry}) { - $augmenting_table = undef; + $augmenting_entry = undef; } } - if ($augmenting_table) { + if ($augmenting_entry) { + $self->debug(sprintf "get_snmp_table_objects augment %s %s with %s", $mib, $table, $augmenting_table); @augmenting_columns = $self->get_table_row_oids($mib, $augmenting_entry, $rows, $sym_lookup); $augmenting_tableoid = $Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{$mib}->{$augmenting_table}; + push(@augmenting, [$augmenting_tableoid, \@augmenting_columns]); } } if (scalar(@{$indices}) == 1 && $indices->[0] == -1) { @@ -1839,7 +1891,8 @@ sub get_snmp_table_objects { my $result = $self->get_entries( -columns => \@columns, ); - if ($augmenting_table) { + foreach (@augmenting) { + my($augmenting_tableoid, @augmenting_columns) = ($_->[0], @{$_->[1]}); my $augmenting_result = $self->get_entries( -columns => \@augmenting_columns, ); @@ -1851,8 +1904,9 @@ sub get_snmp_table_objects { $self->get_indices( -baseoid => $entryoid, -oids => [keys %{$result}]); - @entries = $self->make_symbolic($mib, $result, \@indices, $sym_lookup); - @entries = map { $_->{indices} = shift @indices; $_ } @entries; + @entries = map { + $_->{indices} = shift @indices; $_ + } @entries = $self->make_symbolic($mib, $result, \@indices, $sym_lookup); $self->debug(sprintf "get_snmp_table_objects mini returns %d entries", scalar(@entries)); } elsif (scalar(@{$indices}) == 1) { @@ -1862,7 +1916,8 @@ sub get_snmp_table_objects { -endindex => $index, -columns => \@columns, ); - if ($augmenting_table) { + foreach (@augmenting) { + my($augmenting_tableoid, @augmenting_columns) = ($_->[0], @{$_->[1]}); my $augmenting_result = $self->get_entries( -startindex => $index, -endindex => $index, @@ -1872,8 +1927,9 @@ sub get_snmp_table_objects { $result->{$key} = $value; } } - @entries = $self->make_symbolic($mib, $result, $indices, $sym_lookup); - @entries = map { $_->{indices} = shift @{$indices}; $_ } @entries; + @entries = map { + $_->{indices} = shift @{$indices}; $_ + } $self->make_symbolic($mib, $result, $indices, $sym_lookup); $self->debug(sprintf "get_snmp_table_objects single returns %d entries", scalar(@entries)); } elsif (scalar(@{$indices}) > 1) { @@ -1885,11 +1941,36 @@ sub get_snmp_table_objects { # holzweg. dicke ciscos liefern unvollstaendiges resultat, d.h. # bei 138,19,157 kommt nur 138..144, dann ist schluss. # maxrepetitions bringt nichts. - $result = $self->get_entries( - -startindex => $startindex, - -endindex => $endindex, - -columns => \@columns, - ); + #$result = $self->get_entries( + # -startindex => $startindex, + # -endindex => $endindex, + # -columns => \@columns, + #); + # anderer ansatz. zusammenhaengende sequenzen suchen und dann + # mehrere bulkwalks absetzen. bringt aber nichts, wenn die indices + # wild verstreut sind + my @sequences = (); + my $sequence; + foreach my $idx (0..scalar(@sortedindices)-1) { + if ($idx != 0 && $sortedindices[$idx] == $sortedindices[$idx-1]+1) { + push(@{$sequence}, $sortedindices[$idx]); + } else { + $sequence = [$sortedindices[$idx]]; + push(@sequences, $sequence); + } + } + foreach my $sequence (@sequences) { + my $startindex = $sequence->[0]; + my $endindex = $sequence->[-1]; + my $tmp_result = $self->get_entries( + -startindex => $startindex, + -endindex => $endindex, + -columns => \@columns, + ); + while (my ($key, $value) = each %{$tmp_result}) { + $result->{$key} = $value; + } + } } else { foreach my $idx (@sortedindices) { my $tmp_result = $self->get_entries( @@ -1902,7 +1983,8 @@ sub get_snmp_table_objects { } } } - if ($augmenting_table) { + foreach (@augmenting) { + my($augmenting_tableoid, @augmenting_columns) = ($_->[0], @{$_->[1]}); foreach my $idx (@sortedindices) { my $tmp_result = $self->get_entries( -startindex => $idx, @@ -1916,15 +1998,17 @@ sub get_snmp_table_objects { } # now we have numerical_oid+index => value # needs to become symboic_oid => value - @entries = $self->make_symbolic($mib, $result, $indices, $sym_lookup); - @entries = map { $_->{indices} = shift @{$indices}; $_ } @entries; + @entries = map { + $_->{indices} = shift @{$indices}; $_ + } $self->make_symbolic($mib, $result, $indices, $sym_lookup); $self->debug(sprintf "get_snmp_table_objects single returns %d entries", scalar(@entries)); } elsif (scalar(@{$rows})) { my $result = $self->get_entries( -columns => \@columns, ); - if ($augmenting_table) { + foreach (@augmenting) { + my($augmenting_tableoid, @augmenting_columns) = ($_->[0], @{$_->[1]}); my $augmenting_result = $self->get_entries( -columns => \@augmenting_columns, ); @@ -1936,18 +2020,17 @@ sub get_snmp_table_objects { $self->get_indices( -baseoid => $entryoid, -oids => [keys %{$result}]); - @entries = $self->make_symbolic($mib, $result, \@indices, $sym_lookup); - @entries = map { $_->{indices} = shift @indices; $_ } @entries; + @entries = map { + $_->{indices} = shift @indices; $_ + } $self->make_symbolic($mib, $result, \@indices, $sym_lookup); $self->debug(sprintf "get_snmp_table_objects rows returns %d entries", scalar(@entries)); } else { my $result = $self->get_table( -baseoid => $tableoid, ); - if ($augmenting_table) { - #my $augmenting_result = $self->get_entries( - # -columns => \@augmenting_columns, - #); + foreach (@augmenting) { + my($augmenting_tableoid, @augmenting_columns) = ($_->[0], @{$_->[1]}); my $augmenting_result = $self->get_table( -baseoid => $augmenting_tableoid, ); @@ -1961,8 +2044,9 @@ sub get_snmp_table_objects { $self->get_indices( -baseoid => $entryoid, -oids => [keys %{$result}]); - @entries = $self->make_symbolic($mib, $result, \@indices, $sym_lookup); - @entries = map { $_->{indices} = shift @indices; $_ } @entries; + @entries = map { + $_->{indices} = shift @indices; $_ + } $self->make_symbolic($mib, $result, \@indices, $sym_lookup); $self->debug(sprintf "get_snmp_table_objects default returns %d entries", scalar(@entries)); } @@ -1970,12 +2054,6 @@ sub get_snmp_table_objects { return @entries; } -sub bulk_is_baeh { - my ($self, $maxrepetitions) = @_; - $maxrepetitions ||= 1; - $Monitoring::GLPlugin::SNMP::maxrepetitions = $maxrepetitions; -} - ################################################################ # 3rd level functions. calling net::snmp-functions # @@ -2033,14 +2111,18 @@ sub get_request { sub get_entries_get_bulk { my ($self, %params) = @_; my $result = {}; - $self->debug(sprintf "get_entries_get_bulk %s", Data::Dumper::Dumper(\%params)); my %newparams = (); - $newparams{'-maxrepetitions'} = 3; $newparams{'-startindex'} = $params{'-startindex'} if defined $params{'-startindex'}; $newparams{'-endindex'} = $params{'-endindex'} if defined $params{'-endindex'}; $newparams{'-columns'} = $params{'-columns'}; + if ($Monitoring::GLPlugin::SNMP::maxrepetitions) { + $newparams{'-maxrepetitions'} = $Monitoring::GLPlugin::SNMP::maxrepetitions; + } else { + $newparams{'-maxrepetitions'} = 3; + } + $self->debug(sprintf "get_entries_get_bulk %s", Data::Dumper::Dumper(\%newparams)); if ($Monitoring::GLPlugin::SNMP::session->version() == 3) { $newparams{-contextengineid} = $self->opts->contextengineid if $self->opts->contextengineid; $newparams{-contextname} = $self->opts->contextname if $self->opts->contextname; @@ -2052,7 +2134,6 @@ sub get_entries_get_bulk { sub get_entries_get_next { my ($self, %params) = @_; my $result = {}; - $self->debug(sprintf "get_entries_get_next %s", Data::Dumper::Dumper(\%params)); my %newparams = (); $newparams{'-maxrepetitions'} = 0; $newparams{'-startindex'} = $params{'-startindex'} @@ -2060,6 +2141,7 @@ sub get_entries_get_next { $newparams{'-endindex'} = $params{'-endindex'} if defined $params{'-endindex'}; $newparams{'-columns'} = $params{'-columns'}; + $self->debug(sprintf "get_entries_get_next %s", Data::Dumper::Dumper(\%newparams)); if ($Monitoring::GLPlugin::SNMP::session->version() == 3) { $newparams{-contextengineid} = $self->opts->contextengineid if $self->opts->contextengineid; $newparams{-contextname} = $self->opts->contextname if $self->opts->contextname; @@ -2071,13 +2153,13 @@ sub get_entries_get_next { sub get_entries_get_next_1index { my ($self, %params) = @_; my $result = {}; - $self->debug(sprintf "get_entries_get_next_1index %s", Data::Dumper::Dumper(\%params)); my %newparams = (); $newparams{'-startindex'} = $params{'-startindex'} if defined $params{'-startindex'}; $newparams{'-endindex'} = $params{'-endindex'} if defined $params{'-endindex'}; $newparams{'-columns'} = $params{'-columns'}; + $self->debug(sprintf "get_entries_get_next_1index %s", Data::Dumper::Dumper(\%newparams)); my %singleparams = (); $singleparams{'-maxrepetitions'} = 0; if ($Monitoring::GLPlugin::SNMP::session->version() == 3) { @@ -2101,13 +2183,13 @@ sub get_entries_get_next_1index { sub get_entries_get_simple { my ($self, %params) = @_; my $result = {}; - $self->debug(sprintf "get_entries_get_simple %s", Data::Dumper::Dumper(\%params)); my %newparams = (); $newparams{'-startindex'} = $params{'-startindex'} if defined $params{'-startindex'}; $newparams{'-endindex'} = $params{'-endindex'} if defined $params{'-endindex'}; $newparams{'-columns'} = $params{'-columns'}; + $self->debug(sprintf "get_entries_get_simple %s", Data::Dumper::Dumper(\%newparams)); my %singleparams = (); if ($Monitoring::GLPlugin::SNMP::session->version() == 3) { $singleparams{-contextengineid} = $self->opts->contextengineid if $self->opts->contextengineid; @@ -2149,12 +2231,23 @@ sub get_entries { # The message size exceeded the buffer maxMsgSize of (\d+) # Message size exceeded buffer maxMsgSize if ($Monitoring::GLPlugin::SNMP::session->error() =~ /message size exceeded.*buffer maxMsgSize/i) { - $self->debug(sprintf "buffer exceeded. raise *5 for next try"); + # old methos. might be no good idea for wan + #$self->debug(sprintf "buffer exceeded. raise *5 for next try"); + #$self->mult_snmp_max_msg_size(5); + $self->debug(sprintf "buffer exceeded. lower repetitions for next try"); + $self->bulk_is_baeh($self->get_max_repetitions() * 0.75); + } elsif ($Monitoring::GLPlugin::SNMP::session->error() =~ /Authentication failure/ && $Monitoring::GLPlugin::SNMP::session->max_msg_size() > 10) { + $self->debug("A so a Rimbfiech, so a saudumms. Aaf oamol kennda me nimmer"); + # australische Nexus. Bulkwalk mit hochgedrehten max_repetitions (*128) + # fuehrt so so einem fake Authentication failure $self->mult_snmp_max_msg_size(5); + $result = $self->get_entries(%params); } else { $self->debug($Monitoring::GLPlugin::SNMP::session->error()); } - if (defined $params{'-endindex'} && defined $params{'-startindex'}) { + if ($result) { + # Rimbfiech fallback was successful + } elsif (defined $params{'-endindex'} && defined $params{'-startindex'}) { $result = $self->get_entries_get_simple(%params); } else { $result = $self->get_entries_get_next(%params); @@ -2294,6 +2387,8 @@ sub get_entries_by_walk { sub get_table { my ($self, %params) = @_; + my $tic; + my $tac; $self->add_oidtrace($params{'-baseoid'}); if (! $self->opts->snmpwalk) { my @notcached = (); @@ -2307,7 +2402,9 @@ sub get_table { $params{'-maxrepetitions'} = $Monitoring::GLPlugin::SNMP::maxrepetitions; } $self->debug(sprintf "get_table %s", Data::Dumper::Dumper(\%params)); + $tic = time; my $result = $Monitoring::GLPlugin::SNMP::session->get_table(%params); + $tac = time; if (! defined $result || (defined $result && ! %{$result})) { $self->debug(sprintf "get_table error: %s", $Monitoring::GLPlugin::SNMP::session->error()); @@ -2326,7 +2423,8 @@ sub get_table { $self->debug("get_table error: try fallback"); $self->debug(sprintf "get_table %s", Data::Dumper::Dumper(\%params)); $result = $Monitoring::GLPlugin::SNMP::session->get_table(%params); - $self->debug(sprintf "get_table returned %d oids", scalar(keys %{$result})); + $tac = time; + $self->debug(sprintf "get_table returned %d oids in %ds", scalar(keys %{$result}), $tac - $tic); if (! defined $result || ! %{$result}) { $self->debug(sprintf "get_table error: %s", $Monitoring::GLPlugin::SNMP::session->error()); @@ -2335,7 +2433,8 @@ sub get_table { $self->debug("get_table error: try getnext fallback"); $self->debug(sprintf "get_table %s", Data::Dumper::Dumper(\%params)); $result = $Monitoring::GLPlugin::SNMP::session->get_table(%params); - $self->debug(sprintf "get_table returned %d oids", scalar(keys %{$result})); + $tac = time; + $self->debug(sprintf "get_table returned %d oids in %ds", scalar(keys %{$result}), $tac - $tic); } if (! defined $result || ! %{$result}) { $self->debug("get_table error: no more fallbacks. Try --protocol 1"); @@ -2356,7 +2455,7 @@ sub get_table { $self->add_rawdata($key, $value); } } - $self->debug(sprintf "get_table returned %d oids", $num_rows); + $self->debug(sprintf "get_table returned %d oids in %ds", $num_rows, $tac - $tic); foreach my $key (@blank_keys) { my $value = $result->{$key}; delete $result->{$key}; @@ -2413,6 +2512,7 @@ sub get_symbol { # LgpEnvTemperatureMeasurementDegC = '1.3.6.1.4.1.476.1.42.3.4.1.1.4' # der name des temp. sensor wird ueber die oid mitgeteilt $self->require_mib($mib); + $oid =~ s/^\.//g; foreach my $symoid (keys %{$Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{$mib}}) { if ($oid eq $Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{$mib}->{$symoid}) { @@ -2605,8 +2705,13 @@ sub make_symbolic { } if (@{$indices} and scalar(@{$indices}) == 1 and !defined $indices->[0]->[0]) { my $mo = {}; - foreach my $symoid - (keys %{$Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{$mib}}) { + my @lookup_keys = (); + if (! $sym_lookup) { + @lookup_keys = keys %{$Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{$mib}}; + } else { + @lookup_keys = values %{$sym_lookup}; + } + foreach my $symoid (@lookup_keys) { my $oid = $Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{$mib}->{$symoid}; if (ref($oid) ne 'HASH') { if (exists $result->{$oid}) { @@ -2649,6 +2754,8 @@ sub make_symbolic { $mo->{$symoid} = 'unknown_'.$result->{$oid}; # oder $Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{$mib}->{$symoid.'Definition'}? } + } else { + $mo->{$symoid} = $result->{$oid}; } } } diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/CSF.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/CSF.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/CSF.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/CSF.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/Item.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/Item.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/Item.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/Item.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ADSLLINEMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ADSLLINEMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ADSLLINEMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ADSLLINEMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/AIRESPACESWITCHINGMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/AIRESPACESWITCHINGMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/AIRESPACESWITCHINGMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/AIRESPACESWITCHINGMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/AIRESPACEWIRELESSMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/AIRESPACEWIRELESSMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/AIRESPACEWIRELESSMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/AIRESPACEWIRELESSMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ALARMMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ALARMMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ALARMMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ALARMMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ALCATELIND1BASEMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ALCATELIND1BASEMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ALCATELIND1BASEMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ALCATELIND1BASEMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ARISTABGP4V2MIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ARISTABGP4V2MIB.pm new file mode 100644 index 0000000..30d0c98 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ARISTABGP4V2MIB.pm @@ -0,0 +1,159 @@ +package Monitoring::GLPlugin::SNMP::MibsAndOids::ARISTABGP4V2MIB; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::origin->{'ARISTA-BGP4V2-MIB'} = { + url => '', + name => 'ARISTA-BGP4V2-MIB', +}; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{'ARISTA-BGP4V2-MIB'} = + '1.3.6.1.4.1.30065.4.1'; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'ARISTA-BGP4V2-MIB'} = { + aristaBgp4V2 => '1.3.6.1.4.1.30065.4.1', + aristaBgp4V2Notifications => '1.3.6.1.4.1.30065.4.1.0', + aristaBgp4V2Objects => '1.3.6.1.4.1.30065.4.1.1', + aristaBgp4V2DiscontinuityTable => '1.3.6.1.4.1.30065.4.1.1.1', + aristaBgp4V2DiscontinuityEntry => '1.3.6.1.4.1.30065.4.1.1.1.1', + aristaBgp4V2DiscontinuityTime => '1.3.6.1.4.1.30065.4.1.1.1.1.1', + aristaBgp4V2PeerTable => '1.3.6.1.4.1.30065.4.1.1.2', + aristaBgp4V2PeerEntry => '1.3.6.1.4.1.30065.4.1.1.2.1', + aristaBgp4V2PeerInstance => '1.3.6.1.4.1.30065.4.1.1.2.1.1', + aristaBgp4V2PeerLocalAddrType => '1.3.6.1.4.1.30065.4.1.1.2.1.2', + aristaBgp4V2PeerLocalAddrTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + aristaBgp4V2PeerLocalAddr => '1.3.6.1.4.1.30065.4.1.1.2.1.3', + aristaBgp4V2PeerLocalAddrDefinition => 'INET-ADDRESS-MIB::InetAddress(aristaBgp4V2PeerLocalAddrType)', + aristaBgp4V2PeerRemoteAddrType => '1.3.6.1.4.1.30065.4.1.1.2.1.4', + aristaBgp4V2PeerRemoteAddrTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + aristaBgp4V2PeerRemoteAddr => '1.3.6.1.4.1.30065.4.1.1.2.1.5', + aristaBgp4V2PeerRemoteAddrDefinition => 'INET-ADDRESS-MIB::InetAddress(aristaBgp4V2PeerRemoteAddrType)', + aristaBgp4V2PeerLocalPort => '1.3.6.1.4.1.30065.4.1.1.2.1.6', + aristaBgp4V2PeerLocalAs => '1.3.6.1.4.1.30065.4.1.1.2.1.7', + aristaBgp4V2PeerLocalIdentifier => '1.3.6.1.4.1.30065.4.1.1.2.1.8', + aristaBgp4V2PeerLocalIdentifierDefinition => 'ARISTA-BGP4V2-TC-MIB::AristaBgp4V2IdentifierTC', + aristaBgp4V2PeerRemotePort => '1.3.6.1.4.1.30065.4.1.1.2.1.9', + aristaBgp4V2PeerRemoteAs => '1.3.6.1.4.1.30065.4.1.1.2.1.10', + aristaBgp4V2PeerRemoteIdentifier => '1.3.6.1.4.1.30065.4.1.1.2.1.11', + aristaBgp4V2PeerRemoteIdentifierDefinition => 'ARISTA-BGP4V2-TC-MIB::AristaBgp4V2IdentifierTC', + aristaBgp4V2PeerAdminStatus => '1.3.6.1.4.1.30065.4.1.1.2.1.12', + aristaBgp4V2PeerAdminStatusDefinition => 'ARISTA-BGP4V2-MIB::aristaBgp4V2PeerAdminStatus', + aristaBgp4V2PeerState => '1.3.6.1.4.1.30065.4.1.1.2.1.13', + aristaBgp4V2PeerStateDefinition => 'ARISTA-BGP4V2-MIB::aristaBgp4V2PeerState', + aristaBgp4V2PeerDescription => '1.3.6.1.4.1.30065.4.1.1.2.1.14', + aristaBgp4V2PeerErrorsTable => '1.3.6.1.4.1.30065.4.1.1.3', + aristaBgp4V2PeerErrorsEntry => '1.3.6.1.4.1.30065.4.1.1.3.1', + aristaBgp4V2PeerLastErrorCodeReceived => '1.3.6.1.4.1.30065.4.1.1.3.1.1', + aristaBgp4V2PeerLastErrorSubCodeReceived => '1.3.6.1.4.1.30065.4.1.1.3.1.2', + aristaBgp4V2PeerLastErrorReceivedTime => '1.3.6.1.4.1.30065.4.1.1.3.1.3', + aristaBgp4V2PeerLastErrorReceivedText => '1.3.6.1.4.1.30065.4.1.1.3.1.4', + aristaBgp4V2PeerLastErrorReceivedData => '1.3.6.1.4.1.30065.4.1.1.3.1.5', + aristaBgp4V2PeerLastErrorCodeSent => '1.3.6.1.4.1.30065.4.1.1.3.1.6', + aristaBgp4V2PeerLastErrorSubCodeSent => '1.3.6.1.4.1.30065.4.1.1.3.1.7', + aristaBgp4V2PeerLastErrorSentTime => '1.3.6.1.4.1.30065.4.1.1.3.1.8', + aristaBgp4V2PeerLastErrorSentText => '1.3.6.1.4.1.30065.4.1.1.3.1.9', + aristaBgp4V2PeerLastErrorSentData => '1.3.6.1.4.1.30065.4.1.1.3.1.10', + aristaBgp4V2PeerEventTimesTable => '1.3.6.1.4.1.30065.4.1.1.4', + aristaBgp4V2PeerEventTimesEntry => '1.3.6.1.4.1.30065.4.1.1.4.1', + aristaBgp4V2PeerFsmEstablishedTime => '1.3.6.1.4.1.30065.4.1.1.4.1.1', + aristaBgp4V2PeerInUpdatesElapsedTime => '1.3.6.1.4.1.30065.4.1.1.4.1.2', + aristaBgp4V2PeerConfiguredTimersTable => '1.3.6.1.4.1.30065.4.1.1.5', + aristaBgp4V2PeerConfiguredTimersEntry => '1.3.6.1.4.1.30065.4.1.1.5.1', + aristaBgp4V2PeerConnectRetryInterval => '1.3.6.1.4.1.30065.4.1.1.5.1.1', + aristaBgp4V2PeerHoldTimeConfigured => '1.3.6.1.4.1.30065.4.1.1.5.1.2', + aristaBgp4V2PeerKeepAliveConfigured => '1.3.6.1.4.1.30065.4.1.1.5.1.3', + aristaBgp4V2PeerMinASOrigInterval => '1.3.6.1.4.1.30065.4.1.1.5.1.4', + aristaBgp4V2PeerMinRouteAdverInterval => '1.3.6.1.4.1.30065.4.1.1.5.1.5', + aristaBgp4V2PeerNegotiatedTimersTable => '1.3.6.1.4.1.30065.4.1.1.6', + aristaBgp4V2PeerNegotiatedTimersEntry => '1.3.6.1.4.1.30065.4.1.1.6.1', + aristaBgp4V2PeerHoldTime => '1.3.6.1.4.1.30065.4.1.1.6.1.1', + aristaBgp4V2PeerKeepAlive => '1.3.6.1.4.1.30065.4.1.1.6.1.2', + aristaBgp4V2PeerCountersTable => '1.3.6.1.4.1.30065.4.1.1.7', + aristaBgp4V2PeerCountersEntry => '1.3.6.1.4.1.30065.4.1.1.7.1', + aristaBgp4V2PeerInUpdates => '1.3.6.1.4.1.30065.4.1.1.7.1.1', + aristaBgp4V2PeerOutUpdates => '1.3.6.1.4.1.30065.4.1.1.7.1.2', + aristaBgp4V2PeerInTotalMessages => '1.3.6.1.4.1.30065.4.1.1.7.1.3', + aristaBgp4V2PeerOutTotalMessages => '1.3.6.1.4.1.30065.4.1.1.7.1.4', + aristaBgp4V2PeerFsmEstablishedTransitions => '1.3.6.1.4.1.30065.4.1.1.7.1.5', + aristaBgp4V2PrefixGaugesTable => '1.3.6.1.4.1.30065.4.1.1.8', + aristaBgp4V2PrefixGaugesEntry => '1.3.6.1.4.1.30065.4.1.1.8.1', + aristaBgp4V2PrefixGaugesAfi => '1.3.6.1.4.1.30065.4.1.1.8.1.1', + aristaBgp4V2PrefixGaugesAfiDefinition => 'ARISTA-BGP4V2-TC-MIB::AristaBgp4V2AddressFamilyIdentifierTC', + aristaBgp4V2PrefixGaugesSafi => '1.3.6.1.4.1.30065.4.1.1.8.1.2', + aristaBgp4V2PrefixGaugesSafiDefinition => 'ARISTA-BGP4V2-TC-MIB::AristaBgp4V2SubsequentAddressFamilyIdentifierTC', + aristaBgp4V2PrefixInPrefixes => '1.3.6.1.4.1.30065.4.1.1.8.1.3', + aristaBgp4V2PrefixInPrefixesAccepted => '1.3.6.1.4.1.30065.4.1.1.8.1.4', + aristaBgp4V2PrefixOutPrefixes => '1.3.6.1.4.1.30065.4.1.1.8.1.5', + aristaBgp4V2NlriTable => '1.3.6.1.4.1.30065.4.1.1.9', + aristaBgp4V2NlriEntry => '1.3.6.1.4.1.30065.4.1.1.9.1', + aristaBgp4V2NlriIndex => '1.3.6.1.4.1.30065.4.1.1.9.1.1', + aristaBgp4V2NlriAfi => '1.3.6.1.4.1.30065.4.1.1.9.1.2', + aristaBgp4V2NlriAfiDefinition => 'ARISTA-BGP4V2-TC-MIB::AristaBgp4V2AddressFamilyIdentifierTC', + aristaBgp4V2NlriSafi => '1.3.6.1.4.1.30065.4.1.1.9.1.3', + aristaBgp4V2NlriSafiDefinition => 'ARISTA-BGP4V2-TC-MIB::AristaBgp4V2SubsequentAddressFamilyIdentifierTC', + aristaBgp4V2NlriPrefixType => '1.3.6.1.4.1.30065.4.1.1.9.1.4', + aristaBgp4V2NlriPrefix => '1.3.6.1.4.1.30065.4.1.1.9.1.5', + aristaBgp4V2NlriPrefixLen => '1.3.6.1.4.1.30065.4.1.1.9.1.6', + aristaBgp4V2NlriBest => '1.3.6.1.4.1.30065.4.1.1.9.1.7', + aristaBgp4V2NlriCalcLocalPref => '1.3.6.1.4.1.30065.4.1.1.9.1.8', + aristaBgp4V2NlriOrigin => '1.3.6.1.4.1.30065.4.1.1.9.1.9', + aristaBgp4V2NlriOriginDefinition => 'ARISTA-BGP4V2-MIB::aristaBgp4V2NlriOrigin', + aristaBgp4V2NlriNextHopAddrType => '1.3.6.1.4.1.30065.4.1.1.9.1.10', + aristaBgp4V2NlriNextHopAddr => '1.3.6.1.4.1.30065.4.1.1.9.1.11', + aristaBgp4V2NlriLinkLocalNextHopAddrType => '1.3.6.1.4.1.30065.4.1.1.9.1.12', + aristaBgp4V2NlriLinkLocalNextHopAddr => '1.3.6.1.4.1.30065.4.1.1.9.1.13', + aristaBgp4V2NlriLocalPrefPresent => '1.3.6.1.4.1.30065.4.1.1.9.1.14', + aristaBgp4V2NlriLocalPref => '1.3.6.1.4.1.30065.4.1.1.9.1.15', + aristaBgp4V2NlriMedPresent => '1.3.6.1.4.1.30065.4.1.1.9.1.16', + aristaBgp4V2NlriMed => '1.3.6.1.4.1.30065.4.1.1.9.1.17', + aristaBgp4V2NlriAtomicAggregate => '1.3.6.1.4.1.30065.4.1.1.9.1.18', + aristaBgp4V2NlriAggregatorPresent => '1.3.6.1.4.1.30065.4.1.1.9.1.19', + aristaBgp4V2NlriAggregatorAS => '1.3.6.1.4.1.30065.4.1.1.9.1.20', + aristaBgp4V2NlriAggregatorAddr => '1.3.6.1.4.1.30065.4.1.1.9.1.21', + aristaBgp4V2NlriAsPathCalcLength => '1.3.6.1.4.1.30065.4.1.1.9.1.22', + aristaBgp4V2NlriAsPathString => '1.3.6.1.4.1.30065.4.1.1.9.1.23', + aristaBgp4V2NlriAsPath => '1.3.6.1.4.1.30065.4.1.1.9.1.24', + aristaBgp4V2NlriPathAttrUnknown => '1.3.6.1.4.1.30065.4.1.1.9.1.25', + aristaBgp4V2AdjRibsOutTable => '1.3.6.1.4.1.30065.4.1.1.10', + aristaBgp4V2AdjRibsOutEntry => '1.3.6.1.4.1.30065.4.1.1.10.1', + aristaBgp4V2AdjRibsOutIndex => '1.3.6.1.4.1.30065.4.1.1.10.1.1', + aristaBgp4V2AdjRibsOutRoute => '1.3.6.1.4.1.30065.4.1.1.10.1.2', + aristaBgp4V2Conformance => '1.3.6.1.4.1.30065.4.1.2', + aristaBgp4V2Compliances => '1.3.6.1.4.1.30065.4.1.2.1', + aristaBgp4V2Groups => '1.3.6.1.4.1.30065.4.1.2.2', +}; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'ARISTA-BGP4V2-MIB'} = { + aristaBgp4V2NlriOrigin => { + '1' => 'igp', + '2' => 'egp', + '3' => 'incomplete', + }, + aristaBgp4V2PeerAdminStatus => { + '1' => 'halted', + '2' => 'running', + }, + aristaBgp4V2PeerState => { + '1' => 'idle', + '2' => 'connect', + '3' => 'active', + '4' => 'opensent', + '5' => 'openconfirm', + '6' => 'established', + }, +}; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'ARISTA-BGP4V2-TC-MIB'} = { + AristaBgp4V2IdentifierTC => sub { + my ($addr) = @_; + return Monitoring::GLPlugin::SNMP::TableItem->new()->unhex_ip($addr); + }, + AristaBgp4V2AddressFamilyIdentifierTC => { + 1 => 'ipv4', + 2 => 'ipv6', + }, + AristaBgp4V2SubsequentAddressFamilyIdentifierTC => { + 1 => 'unicast', + 2 => 'multicast', + 4 => 'mpls', + }, +}; + diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ARISTAENTITYSENSORMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ARISTAENTITYSENSORMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ARISTAENTITYSENSORMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ARISTAENTITYSENSORMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ARUBATCMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ARUBATCMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ARUBATCMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ARUBATCMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ASYNCOSMAILMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ASYNCOSMAILMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ASYNCOSMAILMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ASYNCOSMAILMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ATTACKMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ATTACKMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ATTACKMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ATTACKMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/BGP4MIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/BGP4MIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/BGP4MIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/BGP4MIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/BIANCABRICKMIBRESMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/BIANCABRICKMIBRESMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/BIANCABRICKMIBRESMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/BIANCABRICKMIBRESMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/BLUECOATAVMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/BLUECOATAVMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/BLUECOATAVMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/BLUECOATAVMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/BLUECOATSGPROXYMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/BLUECOATSGPROXYMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/BLUECOATSGPROXYMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/BLUECOATSGPROXYMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CHECKPOINTMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CHECKPOINTMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CHECKPOINTMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CHECKPOINTMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOBGP4MIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOBGP4MIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOBGP4MIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOBGP4MIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOCCMMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOCCMMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOCCMMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOCCMMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOCONFIGMANMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOCONFIGMANMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOCONFIGMANMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOCONFIGMANMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOEIGRPMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOEIGRPMIB.pm new file mode 100644 index 0000000..9dd3ab6 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOEIGRPMIB.pm @@ -0,0 +1,153 @@ +package Monitoring::GLPlugin::SNMP::MibsAndOids::CISCOEIGRPMIB; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::origin->{'CISCO-EIGRP-MIB'} = { + url => '', + name => 'CISCO-EIGRP-MIB', +}; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{'CISCO-EIGRP-MIB'} = + '1.3.6.1.4.1.9.9.449'; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'CISCO-EIGRP-MIB'} = { + ciscoEigrpMIB => '1.3.6.1.4.1.9.9.449', + cEigrpMIBNotifications => '1.3.6.1.4.1.9.9.449.0', + cEigrpMIBObjects => '1.3.6.1.4.1.9.9.449.1', + cEigrpVpnInfo => '1.3.6.1.4.1.9.9.449.1.1', + cEigrpVpnTable => '1.3.6.1.4.1.9.9.449.1.1.1', + cEigrpVpnEntry => '1.3.6.1.4.1.9.9.449.1.1.1.1', + cEigrpVpnId => '1.3.6.1.4.1.9.9.449.1.1.1.1.1', + cEigrpVpnName => '1.3.6.1.4.1.9.9.449.1.1.1.1.2', + cEigrpAsInfo => '1.3.6.1.4.1.9.9.449.1.2', + cEigrpTraffStatsTable => '1.3.6.1.4.1.9.9.449.1.2.1', + cEigrpTraffStatsEntry => '1.3.6.1.4.1.9.9.449.1.2.1.1', + cEigrpAsNumber => '1.3.6.1.4.1.9.9.449.1.2.1.1.1', + cEigrpNbrCount => '1.3.6.1.4.1.9.9.449.1.2.1.1.2', + cEigrpHellosSent => '1.3.6.1.4.1.9.9.449.1.2.1.1.3', + cEigrpHellosRcvd => '1.3.6.1.4.1.9.9.449.1.2.1.1.4', + cEigrpUpdatesSent => '1.3.6.1.4.1.9.9.449.1.2.1.1.5', + cEigrpUpdatesRcvd => '1.3.6.1.4.1.9.9.449.1.2.1.1.6', + cEigrpQueriesSent => '1.3.6.1.4.1.9.9.449.1.2.1.1.7', + cEigrpQueriesRcvd => '1.3.6.1.4.1.9.9.449.1.2.1.1.8', + cEigrpRepliesSent => '1.3.6.1.4.1.9.9.449.1.2.1.1.9', + cEigrpRepliesRcvd => '1.3.6.1.4.1.9.9.449.1.2.1.1.10', + cEigrpAcksSent => '1.3.6.1.4.1.9.9.449.1.2.1.1.11', + cEigrpAcksRcvd => '1.3.6.1.4.1.9.9.449.1.2.1.1.12', + cEigrpInputQHighMark => '1.3.6.1.4.1.9.9.449.1.2.1.1.13', + cEigrpInputQDrops => '1.3.6.1.4.1.9.9.449.1.2.1.1.14', + cEigrpSiaQueriesSent => '1.3.6.1.4.1.9.9.449.1.2.1.1.15', + cEigrpSiaQueriesRcvd => '1.3.6.1.4.1.9.9.449.1.2.1.1.16', + cEigrpAsRouterIdType => '1.3.6.1.4.1.9.9.449.1.2.1.1.17', + cEigrpAsRouterIdTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + cEigrpAsRouterId => '1.3.6.1.4.1.9.9.449.1.2.1.1.18', + cEigrpAsRouterIdDefinition => 'INET-ADDRESS-MIB::InetAddress(cEigrpAsRouterIdType)', + cEigrpTopoRoutes => '1.3.6.1.4.1.9.9.449.1.2.1.1.19', + cEigrpHeadSerial => '1.3.6.1.4.1.9.9.449.1.2.1.1.20', + cEigrpNextSerial => '1.3.6.1.4.1.9.9.449.1.2.1.1.21', + cEigrpXmitPendReplies => '1.3.6.1.4.1.9.9.449.1.2.1.1.22', + cEigrpXmitDummies => '1.3.6.1.4.1.9.9.449.1.2.1.1.23', + cEigrpTopologyInfo => '1.3.6.1.4.1.9.9.449.1.3', + cEigrpTopoTable => '1.3.6.1.4.1.9.9.449.1.3.1', + cEigrpTopoEntry => '1.3.6.1.4.1.9.9.449.1.3.1.1', + cEigrpDestNetType => '1.3.6.1.4.1.9.9.449.1.3.1.1.1', + cEigrpDestNetTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + cEigrpDestNet => '1.3.6.1.4.1.9.9.449.1.3.1.1.2', + cEigrpDestNetDefinition => 'INET-ADDRESS-MIB::InetAddress(cEigrpDestNetType)', + cEigrpDestNetPrefixLen => '1.3.6.1.4.1.9.9.449.1.3.1.1.4', + cEigrpActive => '1.3.6.1.4.1.9.9.449.1.3.1.1.5', + cEigrpStuckInActive => '1.3.6.1.4.1.9.9.449.1.3.1.1.6', + cEigrpDestSuccessors => '1.3.6.1.4.1.9.9.449.1.3.1.1.7', + cEigrpFdistance => '1.3.6.1.4.1.9.9.449.1.3.1.1.8', + cEigrpRouteOriginType => '1.3.6.1.4.1.9.9.449.1.3.1.1.9', + cEigrpRouteOriginAddrType => '1.3.6.1.4.1.9.9.449.1.3.1.1.10', + cEigrpRouteOriginAddrTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + cEigrpRouteOriginAddr => '1.3.6.1.4.1.9.9.449.1.3.1.1.11', + cEigrpRouteOriginAddrDefinition => 'INET-ADDRESS-MIB::InetAddress(cEigrpRouteOriginAddrType)', + cEigrpNextHopAddressType => '1.3.6.1.4.1.9.9.449.1.3.1.1.12', + cEigrpNextHopAddressTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + cEigrpNextHopAddress => '1.3.6.1.4.1.9.9.449.1.3.1.1.13', + cEigrpNextHopAddressDefinition => 'INET-ADDRESS-MIB::InetAddress(cEigrpNextHopAddressType)', + cEigrpNextHopInterface => '1.3.6.1.4.1.9.9.449.1.3.1.1.14', + cEigrpDistance => '1.3.6.1.4.1.9.9.449.1.3.1.1.15', + cEigrpReportDistance => '1.3.6.1.4.1.9.9.449.1.3.1.1.16', + cEigrpFdistanceWide => '1.3.6.1.4.1.9.9.449.1.3.1.1.17', + cEigrpDistanceWide => '1.3.6.1.4.1.9.9.449.1.3.1.1.18', + cEigrpReportDistanceWide => '1.3.6.1.4.1.9.9.449.1.3.1.1.19', + cEigrpPeerInfo => '1.3.6.1.4.1.9.9.449.1.4', + cEigrpPeerTable => '1.3.6.1.4.1.9.9.449.1.4.1', + cEigrpPeerEntry => '1.3.6.1.4.1.9.9.449.1.4.1.1', + cEigrpHandle => '1.3.6.1.4.1.9.9.449.1.4.1.1.1', + cEigrpPeerAddrType => '1.3.6.1.4.1.9.9.449.1.4.1.1.2', + cEigrpPeerAddrTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + cEigrpPeerAddr => '1.3.6.1.4.1.9.9.449.1.4.1.1.3', + cEigrpPeerAddrDefinition => 'INET-ADDRESS-MIB::InetAddress(cEigrpPeerAddrType)', + cEigrpPeerIfIndex => '1.3.6.1.4.1.9.9.449.1.4.1.1.4', + cEigrpHoldTime => '1.3.6.1.4.1.9.9.449.1.4.1.1.5', + cEigrpUpTime => '1.3.6.1.4.1.9.9.449.1.4.1.1.6', + cEigrpUpTimeDefinition => 'CISCO-EIGRP-MIB::cEigrpUpTime', + cEigrpSrtt => '1.3.6.1.4.1.9.9.449.1.4.1.1.7', + cEigrpRto => '1.3.6.1.4.1.9.9.449.1.4.1.1.8', + cEigrpPktsEnqueued => '1.3.6.1.4.1.9.9.449.1.4.1.1.9', + cEigrpLastSeq => '1.3.6.1.4.1.9.9.449.1.4.1.1.10', + cEigrpVersion => '1.3.6.1.4.1.9.9.449.1.4.1.1.11', + cEigrpRetrans => '1.3.6.1.4.1.9.9.449.1.4.1.1.12', + cEigrpRetries => '1.3.6.1.4.1.9.9.449.1.4.1.1.13', + cEigrpInterfaceInfo => '1.3.6.1.4.1.9.9.449.1.5', + cEigrpInterfaceTable => '1.3.6.1.4.1.9.9.449.1.5.1', + cEigrpInterfaceEntry => '1.3.6.1.4.1.9.9.449.1.5.1.1', + cEigrpPeerCount => '1.3.6.1.4.1.9.9.449.1.5.1.1.3', + cEigrpXmitReliableQ => '1.3.6.1.4.1.9.9.449.1.5.1.1.4', + cEigrpXmitUnreliableQ => '1.3.6.1.4.1.9.9.449.1.5.1.1.5', + cEigrpMeanSrtt => '1.3.6.1.4.1.9.9.449.1.5.1.1.6', + cEigrpPacingReliable => '1.3.6.1.4.1.9.9.449.1.5.1.1.7', + cEigrpPacingUnreliable => '1.3.6.1.4.1.9.9.449.1.5.1.1.8', + cEigrpMFlowTimer => '1.3.6.1.4.1.9.9.449.1.5.1.1.9', + cEigrpPendingRoutes => '1.3.6.1.4.1.9.9.449.1.5.1.1.10', + cEigrpHelloInterval => '1.3.6.1.4.1.9.9.449.1.5.1.1.11', + cEigrpXmitNextSerial => '1.3.6.1.4.1.9.9.449.1.5.1.1.12', + cEigrpUMcasts => '1.3.6.1.4.1.9.9.449.1.5.1.1.13', + cEigrpRMcasts => '1.3.6.1.4.1.9.9.449.1.5.1.1.14', + cEigrpUUcasts => '1.3.6.1.4.1.9.9.449.1.5.1.1.15', + cEigrpRUcasts => '1.3.6.1.4.1.9.9.449.1.5.1.1.16', + cEigrpMcastExcepts => '1.3.6.1.4.1.9.9.449.1.5.1.1.17', + cEigrpCRpkts => '1.3.6.1.4.1.9.9.449.1.5.1.1.18', + cEigrpAcksSuppressed => '1.3.6.1.4.1.9.9.449.1.5.1.1.19', + cEigrpRetransSent => '1.3.6.1.4.1.9.9.449.1.5.1.1.20', + cEigrpOOSrvcd => '1.3.6.1.4.1.9.9.449.1.5.1.1.21', + cEigrpAuthMode => '1.3.6.1.4.1.9.9.449.1.5.1.1.22', + cEigrpAuthModeDefinition => 'CISCO-EIGRP-MIB::cEigrpAuthMode', + cEigrpAuthKeyChain => '1.3.6.1.4.1.9.9.449.1.5.1.1.23', + cEigrpMIBConformance => '1.3.6.1.4.1.9.9.449.2', + cEigrpMIBCompliances => '1.3.6.1.4.1.9.9.449.2.1', + cEigrpMIBGroups => '1.3.6.1.4.1.9.9.449.2.2', +}; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'CISCO-EIGRP-MIB'} = { + cEigrpAuthMode => { + '1' => 'none', + '2' => 'md5', + }, + cEigrpUpTime => sub { + my ($uptime) = @_; + # If the up time is less than 24 hours, the number + # of days will not be reflected and the string will + # be formatted like this: 'hh:mm:ss', reflecting + # hours, minutes, and seconds. + # + # If the up time is greater than 24 hours, EIGRP is + # less precise and the minutes and seconds are not + # reflected. Instead only the days and hours are shown + # and the string will be formatted like this: 'xxxdxxh'." + # + # Aha, und wie erklaerst du dir das hier???? + # 17w3d 6w5d 1y4w + if ($uptime =~ /(\d+)y(\d+)w/) { + return $1 * 365*24*3600 + $2 * 7*24*3600; + } elsif ($uptime =~ /(\d+)w(\d+)d/) { + return $1 * 7*24*3600 + $2 * 24*3600; + } elsif ($uptime =~ /(\d+)d(\d+)h/) { + return $1 * 24*3600 + $2 * 3600; + } elsif ($uptime =~ /(\d+):(\d+):(\d+)/) { + return $1 * 3600 + $2 * 60 + $3; + } + }, +}; diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENHANCEDMEMPOOLMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENHANCEDMEMPOOLMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENHANCEDMEMPOOLMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENHANCEDMEMPOOLMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENTITYALARMMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENTITYALARMMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENTITYALARMMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENTITYALARMMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENTITYFRUCONTROLMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENTITYFRUCONTROLMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENTITYFRUCONTROLMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENTITYFRUCONTROLMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENTITYSENSORMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENTITYSENSORMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENTITYSENSORMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENTITYSENSORMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENVMONMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENVMONMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENVMONMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENVMONMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOETHERNETFABRICEXTENDERMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOETHERNETFABRICEXTENDERMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOETHERNETFABRICEXTENDERMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOETHERNETFABRICEXTENDERMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOFEATURECONTROLMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOFEATURECONTROLMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOFEATURECONTROLMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOFEATURECONTROLMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOFIREWALLMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOFIREWALLMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOFIREWALLMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOFIREWALLMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOHSRPMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOHSRPMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOHSRPMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOHSRPMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOIETFNATMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOIETFNATMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOIETFNATMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOIETFNATMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOIPSECFLOWMONITORMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOIPSECFLOWMONITORMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOIPSECFLOWMONITORMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOIPSECFLOWMONITORMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOL2L3INTERFACECONFIGMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOL2L3INTERFACECONFIGMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOL2L3INTERFACECONFIGMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOL2L3INTERFACECONFIGMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOLWAPPAPMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOLWAPPAPMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOLWAPPAPMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOLWAPPAPMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOLWAPPHAMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOLWAPPHAMIB.pm new file mode 100644 index 0000000..a660f32 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOLWAPPHAMIB.pm @@ -0,0 +1,281 @@ +package Monitoring::GLPlugin::SNMP::MibsAndOids::CISCOLWAPPHAMIB; + +# -- CISCO-LWAPP-HA-MIB.my : +# -- Jan 2012, Gayathri +# -- +# -- Copyright (c) 2007, 2014-2015 by Cisco Systems, Inc. +# LAST-UPDATED "201201051150Z" +# ... +# REVISION "201201241150Z" +# DESCRIPTION +# "Initial version of this MIB module. " +# ::= { ciscoMgmt 198888 } +# +# ...und irgendwann taucht dann das hier auf. Einfach so. +# Sowas kommt zufällig ans Tageslicht, weil ein check_nwc_health-Anwender +# seinen WLC von 8.5.135.0 auf Version 8.10.121.0 updatet und dadurch +# 1.3.6.1.4.1.9.9.198888 durch 1.3.6.1.4.1.9.9.843 ersetzt wurde. +# +# -- CISCO-LWAPP-HA-MIB.my : +# -- Jan 2012, Gayathri <--- Pappnase +# -- +# -- Copyright (c) 2017-2018 by Cisco Systems, Inc. +# LAST-UPDATED "201703140000Z" +# ... +# REVISION "201703140000Z" +# DESCRIPTION +# "Initial version of this MIB module." +# ::= { ciscoMgmt 843 } +# + +$Monitoring::GLPlugin::SNMP::MibsAndOids::origin->{'CISCO-LWAPP-HA-MIB'} = { + url => '', + name => 'CISCO-LWAPP-HA-MIB', +}; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{'CISCO-LWAPP-HA-MIB::2012'} = + '1.3.6.1.4.1.9.9.198888'; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'CISCO-LWAPP-HA-MIB::2012'} = { + ciscoLwappHaMIB => '1.3.6.1.4.1.9.9.198888', + ciscoLwappHaMIBObjects => '1.3.6.1.4.1.9.9.198888.0', + ciscoLwappHaGlobalConfig => '1.3.6.1.4.1.9.9.198888.0.1', + cLHaApSsoConfig => '1.3.6.1.4.1.9.9.198888.0.1.1', + cLHaPeerIpAddressType => '1.3.6.1.4.1.9.9.198888.0.1.2', + cLHaPeerIpAddressTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + cLHaPeerIpAddress => '1.3.6.1.4.1.9.9.198888.0.1.3', + cLHaPeerIpAddressDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaPeerIpAddressType)', + cLHaServicePortPeerIpAddressType => '1.3.6.1.4.1.9.9.198888.0.1.4', + cLHaServicePortPeerIpAddressTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + cLHaServicePortPeerIpAddress => '1.3.6.1.4.1.9.9.198888.0.1.5', + cLHaServicePortPeerIpAddressDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaServicePortPeerIpAddressType)', + cLHaServicePortPeerIpNetMaskType => '1.3.6.1.4.1.9.9.198888.0.1.6', + cLHaServicePortPeerIpNetMaskTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + cLHaServicePortPeerIpNetMask => '1.3.6.1.4.1.9.9.198888.0.1.7', + cLHaServicePortPeerIpNetMaskDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaServicePortPeerIpNetMaskType)', + cLHaRedundancyIpAddressType => '1.3.6.1.4.1.9.9.198888.0.1.8', + cLHaRedundancyIpAddressTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + cLHaRedundancyIpAddress => '1.3.6.1.4.1.9.9.198888.0.1.9', + cLHaRedundancyIpAddressDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaRedundancyIpAddressType)', + cLHaPeerMacAddress => '1.3.6.1.4.1.9.9.198888.0.1.10', + cLHaVirtualMacAddress => '1.3.6.1.4.1.9.9.198888.0.1.11', + cLHaPrimaryUnit => '1.3.6.1.4.1.9.9.198888.0.1.12', + cLHaPrimaryUnitDefinition => 'SNMPv2-TC-v1-MIB::TruthValue', + cLHaLinkEncryption => '1.3.6.1.4.1.9.9.198888.0.1.13', + cLHaNetworkFailOver => '1.3.6.1.4.1.9.9.198888.0.1.14', + cLHaNetworkFailOverDefinition => 'SNMPv2-TC-v1-MIB::TruthValue', + cLHaRFStatusUnitIp => '1.3.6.1.4.1.9.9.198888.0.1.15', + cLHaKATimeout => '1.3.6.1.4.1.9.9.198888.0.1.16', + cLHaKARetryCount => '1.3.6.1.4.1.9.9.198888.0.1.17', + cLHaGwRetryCount => '1.3.6.1.4.1.9.9.198888.0.1.18', + cLHaPeerSearchTimeout => '1.3.6.1.4.1.9.9.198888.0.1.19', + ciscoLwappHaNetworkConfig => '1.3.6.1.4.1.9.9.198888.0.2', + cLHaNetworkRoutePeerConfigTable => '1.3.6.1.4.1.9.9.198888.0.2.1', + cLHaNetworkRoutePeerConfigEntry => '1.3.6.1.4.1.9.9.198888.0.2.1.1', + cLHaNetworkRoutePeerIPAddressType => '1.3.6.1.4.1.9.9.198888.0.2.1.1.1', + cLHaNetworkRoutePeerIPAddressTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + cLHaNetworkRoutePeerIPAddress => '1.3.6.1.4.1.9.9.198888.0.2.1.1.2', + cLHaNetworkRoutePeerIPAddressDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaNetworkRoutePeerIPAddressType)', + cLHaNetworkRoutePeerIPNetmaskType => '1.3.6.1.4.1.9.9.198888.0.2.1.1.3', + cLHaNetworkRoutePeerIPNetmaskTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + cLHaNetworkRoutePeerIPNetmask => '1.3.6.1.4.1.9.9.198888.0.2.1.1.4', + cLHaNetworkRoutePeerIPNetmaskDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaNetworkRoutePeerIPNetmaskType)', + cLHaNetworkRoutePeerGatewayType => '1.3.6.1.4.1.9.9.198888.0.2.1.1.5', + cLHaNetworkRoutePeerGatewayTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + cLHaNetworkRoutePeerGateway => '1.3.6.1.4.1.9.9.198888.0.2.1.1.6', + cLHaNetworkRoutePeerGatewayDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaNetworkRoutePeerGatewayType)', + cLHaNetworkRoutePeerTransferStatus => '1.3.6.1.4.1.9.9.198888.0.2.1.1.7', + cLHaNetworkRoutePeerTransferStatusDefinition => 'CISCO-LWAPP-HA-MIB::cLHaNetworkRoutePeerTransferStatus', + cLHaNetworkRoutePeerRowStatus => '1.3.6.1.4.1.9.9.198888.0.2.1.1.8', + ciscoLwappHaMIBNotifs => '1.3.6.1.4.1.9.9.198888.0.3', + ciscoLwappHaNotificationVariable => '1.3.6.1.4.1.9.9.198888.0.4', + cLHaSecondaryControllerUsageTrapType => '1.3.6.1.4.1.9.9.198888.0.4.1', + cLHaSecondaryControllerUsageTrapTypeDefinition => 'CISCO-LWAPP-HA-MIB::cLHaSecondaryControllerUsageTrapType', + cLHaSecondaryControllerUsageDayCounter => '1.3.6.1.4.1.9.9.198888.0.4.2', + cLHaBulkSyncCompleteEventStr => '1.3.6.1.4.1.9.9.198888.0.4.3', + cLHaPeerHotStandbyEventStr => '1.3.6.1.4.1.9.9.198888.0.4.4', + ciscoLwappHaPeerStatisticsVariable => '1.3.6.1.4.1.9.9.198888.0.5', + cLHaSystemStatistics => '1.3.6.1.4.1.9.9.198888.0.5.1', + cLHaCpuStatistics => '1.3.6.1.4.1.9.9.198888.0.5.1.1', + cLHaAllCpuUsage => '1.3.6.1.4.1.9.9.198888.0.5.1.1.1', + cLHaPowerSupplyStatistics => '1.3.6.1.4.1.9.9.198888.0.5.1.2', + cLHaPowerSupply1Present => '1.3.6.1.4.1.9.9.198888.0.5.1.2.1', + cLHaPowerSupply1PresentDefinition => 'CISCO-LWAPP-HA-MIB::cLHaPowerSupply1Present', + cLHaPowerSupply1Operational => '1.3.6.1.4.1.9.9.198888.0.5.1.2.2', + cLHaPowerSupply1OperationalDefinition => 'CISCO-LWAPP-HA-MIB::cLHaPowerSupply1Operational', + cLHaPowerSupply2Present => '1.3.6.1.4.1.9.9.198888.0.5.1.2.3', + cLHaPowerSupply2PresentDefinition => 'CISCO-LWAPP-HA-MIB::cLHaPowerSupply2Present', + cLHaPowerSupply2Operational => '1.3.6.1.4.1.9.9.198888.0.5.1.2.4', + cLHaPowerSupply2OperationalDefinition => 'CISCO-LWAPP-HA-MIB::cLHaPowerSupply2Operational', + cLHaMemoryStatistics => '1.3.6.1.4.1.9.9.198888.0.5.1.3', + cLHaTotalSystemMemory => '1.3.6.1.4.1.9.9.198888.0.5.1.3.1', + cLHaFreeSystemMemory => '1.3.6.1.4.1.9.9.198888.0.5.1.3.2', + cLHaUsedSystemMemory => '1.3.6.1.4.1.9.9.198888.0.5.1.3.3', + cLHaAllocatedFromRtos => '1.3.6.1.4.1.9.9.198888.0.5.1.3.4', + cLHaChunksFree => '1.3.6.1.4.1.9.9.198888.0.5.1.3.5', + cLHaMmappedRegions => '1.3.6.1.4.1.9.9.198888.0.5.1.3.6', + cLHaSpaceInMmappedRegions => '1.3.6.1.4.1.9.9.198888.0.5.1.3.7', + cLHaTotalAllocatedSpace => '1.3.6.1.4.1.9.9.198888.0.5.1.3.8', + cLHaTotalNotInUseSpace => '1.3.6.1.4.1.9.9.198888.0.5.1.3.9', + cLHaTopMostReleasableSpace => '1.3.6.1.4.1.9.9.198888.0.5.1.3.10', + cLHaTotalAllocatedInclMmap => '1.3.6.1.4.1.9.9.198888.0.5.1.3.11', + cLHaTotalUsedInclMmap => '1.3.6.1.4.1.9.9.198888.0.5.1.3.12', + cLHaTotalFreeInclMmap => '1.3.6.1.4.1.9.9.198888.0.5.1.3.13', + ciscoLwappHaStatisticsVariable => '1.3.6.1.4.1.9.9.198888.0.6', + cLHaAvgPeerReachLatency => '1.3.6.1.4.1.9.9.198888.0.6.1', + cLHaAvgGwReachLatency => '1.3.6.1.4.1.9.9.198888.0.6.2', + cLHaBulkSyncStatus => '1.3.6.1.4.1.9.9.198888.0.6.3', +}; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'CISCO-LWAPP-HA-MIB::2012'} = { + cLHaSecondaryControllerUsageTrapType => { + '1' => 'usageStart', + '2' => 'usageComplete', + '3' => 'overUsage', + }, + cLHaPowerSupply1Present => { + '0' => 'false', + '1' => 'true', + }, + cLHaPowerSupply1Operational => { + '0' => 'false', + '1' => 'true', + }, + cLHaPowerSupply2Present => { + '0' => 'false', + '1' => 'true', + }, + cLHaPowerSupply2Operational => { + '0' => 'false', + '1' => 'true', + }, + cLHaNetworkRoutePeerTransferStatus => { + '1' => 'initiate', + '2' => 'inProgress', + '3' => 'success', + '4' => 'failure', + '5' => 'timeout', + }, +}; + + +$Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{'CISCO-LWAPP-HA-MIB::2017'} = + '1.3.6.1.4.1.9.9.843'; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'CISCO-LWAPP-HA-MIB::2017'} = { + ciscoLwappHaMIB => '1.3.6.1.4.1.9.9.843', + ciscoLwappHaMIBNotifs => '1.3.6.1.4.1.9.9.843.0', + ciscoLwappHaMIBObjects => '1.3.6.1.4.1.9.9.843.1', + ciscoLwappHaGlobalConfig => '1.3.6.1.4.1.9.9.843.1.1', + cLHaApSsoConfig => '1.3.6.1.4.1.9.9.843.1.1.1', + cLHaPeerIpAddressType => '1.3.6.1.4.1.9.9.843.1.1.2', + cLHaPeerIpAddressTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + cLHaPeerIpAddress => '1.3.6.1.4.1.9.9.843.1.1.3', + cLHaPeerIpAddressDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaPeerIpAddressType)', + cLHaServicePortPeerIpAddressType => '1.3.6.1.4.1.9.9.843.1.1.4', + cLHaServicePortPeerIpAddressTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + cLHaServicePortPeerIpAddress => '1.3.6.1.4.1.9.9.843.1.1.5', + cLHaServicePortPeerIpAddressDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaServicePortPeerIpAddressType)', + cLHaServicePortPeerIpNetMaskType => '1.3.6.1.4.1.9.9.843.1.1.6', + cLHaServicePortPeerIpNetMaskTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + cLHaServicePortPeerIpNetMask => '1.3.6.1.4.1.9.9.843.1.1.7', + cLHaServicePortPeerIpNetMaskDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaServicePortPeerIpNetMaskType)', + cLHaRedundancyIpAddressType => '1.3.6.1.4.1.9.9.843.1.1.8', + cLHaRedundancyIpAddressTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + cLHaRedundancyIpAddress => '1.3.6.1.4.1.9.9.843.1.1.9', + cLHaRedundancyIpAddressDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaRedundancyIpAddressType)', + cLHaPeerMacAddress => '1.3.6.1.4.1.9.9.843.1.1.10', + cLHaVirtualMacAddress => '1.3.6.1.4.1.9.9.843.1.1.11', + cLHaPrimaryUnit => '1.3.6.1.4.1.9.9.843.1.1.12', + cLHaPrimaryUnitDefinition => 'SNMPv2-TC-v1-MIB::TruthValue', + cLHaLinkEncryption => '1.3.6.1.4.1.9.9.843.1.1.13', + cLHaNetworkFailOver => '1.3.6.1.4.1.9.9.843.1.1.14', + cLHaNetworkFailOverDefinition => 'SNMPv2-TC-v1-MIB::TruthValue', + cLHaRFStatusUnitIp => '1.3.6.1.4.1.9.9.843.1.1.15', + cLHaKATimeout => '1.3.6.1.4.1.9.9.843.1.1.16', + cLHaKARetryCount => '1.3.6.1.4.1.9.9.843.1.1.17', + cLHaGwRetryCount => '1.3.6.1.4.1.9.9.843.1.1.18', + cLHaPeerSearchTimeout => '1.3.6.1.4.1.9.9.843.1.1.19', + cLHaRFStatusUnitIpType => '1.3.6.1.4.1.9.9.843.1.1.20', + ciscoLwappHaNetworkConfig => '1.3.6.1.4.1.9.9.843.1.2', + cLHaNetworkRoutePeerConfigTable => '1.3.6.1.4.1.9.9.843.1.2.1', + cLHaNetworkRoutePeerConfigEntry => '1.3.6.1.4.1.9.9.843.1.2.1.1', + cLHaNetworkRoutePeerIPAddressType => '1.3.6.1.4.1.9.9.843.1.2.1.1.1', + cLHaNetworkRoutePeerIPAddressTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + cLHaNetworkRoutePeerIPAddress => '1.3.6.1.4.1.9.9.843.1.2.1.1.2', + cLHaNetworkRoutePeerIPAddressDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaNetworkRoutePeerIPAddressType)', + cLHaNetworkRoutePeerIPNetmaskType => '1.3.6.1.4.1.9.9.843.1.2.1.1.3', + cLHaNetworkRoutePeerIPNetmaskTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + cLHaNetworkRoutePeerIPNetmask => '1.3.6.1.4.1.9.9.843.1.2.1.1.4', + cLHaNetworkRoutePeerIPNetmaskDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaNetworkRoutePeerIPNetmaskType)', + cLHaNetworkRoutePeerGatewayType => '1.3.6.1.4.1.9.9.843.1.2.1.1.5', + cLHaNetworkRoutePeerGatewayTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', + cLHaNetworkRoutePeerGateway => '1.3.6.1.4.1.9.9.843.1.2.1.1.6', + cLHaNetworkRoutePeerGatewayDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaNetworkRoutePeerGatewayType)', + cLHaNetworkRoutePeerTransferStatus => '1.3.6.1.4.1.9.9.843.1.2.1.1.7', + cLHaNetworkRoutePeerTransferStatusDefinition => 'CISCO-LWAPP-HA-MIB::cLHaNetworkRoutePeerTransferStatus', + cLHaNetworkRoutePeerRowStatus => '1.3.6.1.4.1.9.9.843.1.2.1.1.8', + ciscoLwappHaNotificationVariable => '1.3.6.1.4.1.9.9.843.1.3', + cLHaSecondaryControllerUsageTrapType => '1.3.6.1.4.1.9.9.843.1.3.1', + cLHaSecondaryControllerUsageTrapTypeDefinition => 'CISCO-LWAPP-HA-MIB::cLHaSecondaryControllerUsageTrapType', + cLHaSecondaryControllerUsageDayCounter => '1.3.6.1.4.1.9.9.843.1.3.2', + cLHaBulkSyncCompleteEvent => '1.3.6.1.4.1.9.9.843.1.3.3', + cLHaBulkSyncCompleteEventDefinition => 'CISCO-LWAPP-HA-MIB::cLHaBulkSyncCompleteEvent', + cLHaPeerHotStandbyEvent => '1.3.6.1.4.1.9.9.843.1.3.4', + cLHaPeerHotStandbyEventDefinition => 'CISCO-LWAPP-HA-MIB::cLHaPeerHotStandbyEvent', + ciscoLwappHaPeerStatisticsVariable => '1.3.6.1.4.1.9.9.843.1.4', + ciscoLwappHaSystemStatistics => '1.3.6.1.4.1.9.9.843.1.4.1', + ciscoLwappHaCpuStatistics => '1.3.6.1.4.1.9.9.843.1.4.1.1', + cLHaAllCpuUsage => '1.3.6.1.4.1.9.9.843.1.4.1.1.1', + ciscoLwappHaPowerSupplyStatistics => '1.3.6.1.4.1.9.9.843.1.4.1.2', + cLHaPowerSupply1Present => '1.3.6.1.4.1.9.9.843.1.4.1.2.1', + cLHaPowerSupply1PresentDefinition => 'CISCO-LWAPP-HA-MIB::cLHaPowerSupply1Present', + cLHaPowerSupply1Operational => '1.3.6.1.4.1.9.9.843.1.4.1.2.2', + cLHaPowerSupply1OperationalDefinition => 'CISCO-LWAPP-HA-MIB::cLHaPowerSupply1Operational', + cLHaPowerSupply2Present => '1.3.6.1.4.1.9.9.843.1.4.1.2.3', + cLHaPowerSupply2PresentDefinition => 'CISCO-LWAPP-HA-MIB::cLHaPowerSupply2Present', + cLHaPowerSupply2Operational => '1.3.6.1.4.1.9.9.843.1.4.1.2.4', + cLHaPowerSupply2OperationalDefinition => 'CISCO-LWAPP-HA-MIB::cLHaPowerSupply2Operational', + ciscoLwappHaMemoryStatistics => '1.3.6.1.4.1.9.9.843.1.4.1.3', + cLHaTotalSystemMemory => '1.3.6.1.4.1.9.9.843.1.4.1.3.1', + cLHaFreeSystemMemory => '1.3.6.1.4.1.9.9.843.1.4.1.3.2', + cLHaUsedSystemMemory => '1.3.6.1.4.1.9.9.843.1.4.1.3.3', + cLHaAllocatedFromRtos => '1.3.6.1.4.1.9.9.843.1.4.1.3.4', + cLHaChunksFree => '1.3.6.1.4.1.9.9.843.1.4.1.3.5', + cLHaMmappedRegions => '1.3.6.1.4.1.9.9.843.1.4.1.3.6', + cLHaSpaceInMmappedRegions => '1.3.6.1.4.1.9.9.843.1.4.1.3.7', + cLHaTotalAllocatedSpace => '1.3.6.1.4.1.9.9.843.1.4.1.3.8', + cLHaTotalNotInUseSpace => '1.3.6.1.4.1.9.9.843.1.4.1.3.9', + cLHaTopMostReleasableSpace => '1.3.6.1.4.1.9.9.843.1.4.1.3.10', + cLHaTotalAllocatedInclMmap => '1.3.6.1.4.1.9.9.843.1.4.1.3.11', + cLHaTotalUsedMmap => '1.3.6.1.4.1.9.9.843.1.4.1.3.12', + cLHaTotalFreeInclMmap => '1.3.6.1.4.1.9.9.843.1.4.1.3.13', + ciscoLwappHaStatisticsVariable => '1.3.6.1.4.1.9.9.843.1.5', + cLHaAvgPeerReachLatency => '1.3.6.1.4.1.9.9.843.1.5.1', + cLHaAvgGwReachLatency => '1.3.6.1.4.1.9.9.843.1.5.2', + cLHaBulkSyncStatus => '1.3.6.1.4.1.9.9.843.1.5.3', + ciscoLwappHaMIBConform => '1.3.6.1.4.1.9.9.843.2', + ciscoLwappHaMIBCompliances => '1.3.6.1.4.1.9.9.843.2.1', + ciscoLwappHaMIBGroups => '1.3.6.1.4.1.9.9.843.2.2', +}; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'CISCO-LWAPP-HA-MIB::2017'} = { + cLHaNetworkRoutePeerTransferStatus => { + '1' => 'initiate', + '2' => 'inProgress', + '3' => 'success', + '4' => 'failure', + '5' => 'timeout', + }, + cLHaPeerHotStandbyEvent => { + '1' => 'haPeerHotstandby', + }, + cLHaBulkSyncCompleteEvent => { + '1' => 'bulkSyncComplete', + }, + cLHaSecondaryControllerUsageTrapType => { + '1' => 'usageStart', + '2' => 'usageComplete', + '3' => 'overUsage', + }, +}; diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOMEMORYPOOLMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOMEMORYPOOLMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOMEMORYPOOLMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOMEMORYPOOLMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOPORTCHANNELMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOPORTCHANNELMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOPORTCHANNELMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOPORTCHANNELMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOPORTSECURITYMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOPORTSECURITYMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOPORTSECURITYMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOPORTSECURITYMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOPROCESSMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOPROCESSMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOPROCESSMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOPROCESSMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOREMOTEACCESSMONITORMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOREMOTEACCESSMONITORMIB.pm new file mode 100644 index 0000000..6438371 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOREMOTEACCESSMONITORMIB.pm @@ -0,0 +1,230 @@ +package Monitoring::GLPlugin::SNMP::MibsAndOids::CISCOREMOTEACCESSMONITORMIB; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::origin->{'CISCO-REMOTE-ACCESS-MONITOR-MIB'} = { + url => '', + name => 'CISCO-REMOTE-ACCESS-MONITOR-MIB', +}; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{'CISCO-REMOTE-ACCESS-MONITOR-MIB'} = + '1.3.6.1.4.1.9.9.392'; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'CISCO-REMOTE-ACCESS-MONITOR-MIB'} = { + ciscoRemoteAccessMonitorMIB => '1.3.6.1.4.1.9.9.392', + ciscoRasMonitorMIBNotifs => '1.3.6.1.4.1.9.9.392.0', + ciscoRasMonitorMIBObjects => '1.3.6.1.4.1.9.9.392.1', + crasCapacity => '1.3.6.1.4.1.9.9.392.1.1', + crasMaxSessionsSupportable => '1.3.6.1.4.1.9.9.392.1.1.1', + crasMaxUsersSupportable => '1.3.6.1.4.1.9.9.392.1.1.2', + crasMaxGroupsSupportable => '1.3.6.1.4.1.9.9.392.1.1.3', + crasNumCryptoAccelerators => '1.3.6.1.4.1.9.9.392.1.1.4', + crasResourceUsage => '1.3.6.1.4.1.9.9.392.1.2', + crasGlobalBwUsage => '1.3.6.1.4.1.9.9.392.1.2.1', + crasActivity => '1.3.6.1.4.1.9.9.392.1.3', + crasNumSessions => '1.3.6.1.4.1.9.9.392.1.3.1', + crasNumPrevSessions => '1.3.6.1.4.1.9.9.392.1.3.2', + crasNumUsers => '1.3.6.1.4.1.9.9.392.1.3.3', + crasNumGroups => '1.3.6.1.4.1.9.9.392.1.3.4', + crasGlobalInPkts => '1.3.6.1.4.1.9.9.392.1.3.5', + crasGlobalOutPkts => '1.3.6.1.4.1.9.9.392.1.3.6', + crasGlobalInOctets => '1.3.6.1.4.1.9.9.392.1.3.7', + crasGlobalInDecompOctets => '1.3.6.1.4.1.9.9.392.1.3.8', + crasGlobalOutOctets => '1.3.6.1.4.1.9.9.392.1.3.9', + crasGlobalOutUncompOctets => '1.3.6.1.4.1.9.9.392.1.3.10', + crasGlobalInDropPkts => '1.3.6.1.4.1.9.9.392.1.3.11', + crasGlobalOutDropPkts => '1.3.6.1.4.1.9.9.392.1.3.12', + crasSessionTable => '1.3.6.1.4.1.9.9.392.1.3.21', + crasSessionEntry => '1.3.6.1.4.1.9.9.392.1.3.21.1', + crasUsername => '1.3.6.1.4.1.9.9.392.1.3.21.1.1', + crasGroup => '1.3.6.1.4.1.9.9.392.1.3.21.1.2', + crasSessionIndex => '1.3.6.1.4.1.9.9.392.1.3.21.1.3', + crasAuthenMethod => '1.3.6.1.4.1.9.9.392.1.3.21.1.4', + crasAuthenMethodDefinition => 'CISCO-REMOTE-ACCESS-MONITOR-MIB::UserAuthenMethod', + crasAuthorMethod => '1.3.6.1.4.1.9.9.392.1.3.21.1.5', + crasAuthorMethodDefinition => 'CISCO-REMOTE-ACCESS-MONITOR-MIB::UserAuthorMethod', + crasSessionDuration => '1.3.6.1.4.1.9.9.392.1.3.21.1.6', + crasLocalAddressType => '1.3.6.1.4.1.9.9.392.1.3.21.1.7', + crasLocalAddress => '1.3.6.1.4.1.9.9.392.1.3.21.1.8', + crasISPAddressType => '1.3.6.1.4.1.9.9.392.1.3.21.1.9', + crasISPAddress => '1.3.6.1.4.1.9.9.392.1.3.21.1.10', + crasSessionProtocol => '1.3.6.1.4.1.9.9.392.1.3.21.1.11', + crasSessionProtocolDefinition => 'CISCO-REMOTE-ACCESS-MONITOR-MIB::RasProtocol', + crasProtocolElement => '1.3.6.1.4.1.9.9.392.1.3.21.1.12', + crasSessionEncryptionAlgo => '1.3.6.1.4.1.9.9.392.1.3.21.1.13', + crasSessionEncryptionAlgoDefinition => 'CISCO-REMOTE-ACCESS-MONITOR-MIB::SessionEncrAlgo', + crasSessionPktAuthenAlgo => '1.3.6.1.4.1.9.9.392.1.3.21.1.14', + crasSessionPktAuthenAlgoDefinition => 'CISCO-REMOTE-ACCESS-MONITOR-MIB::SessionAuthAlgo', + crasSessionCompressionAlgo => '1.3.6.1.4.1.9.9.392.1.3.21.1.15', + crasSessionCompressionAlgoDefinition => 'CISCO-REMOTE-ACCESS-MONITOR-MIB::SessionCompressionAlgo', + crasHeartbeatInterval => '1.3.6.1.4.1.9.9.392.1.3.21.1.16', + crasClientVendorString => '1.3.6.1.4.1.9.9.392.1.3.21.1.17', + crasClientVersionString => '1.3.6.1.4.1.9.9.392.1.3.21.1.18', + crasClientOSVendorString => '1.3.6.1.4.1.9.9.392.1.3.21.1.19', + crasClientOSVersionString => '1.3.6.1.4.1.9.9.392.1.3.21.1.20', + crasPrimWINSServerAddrType => '1.3.6.1.4.1.9.9.392.1.3.21.1.21', + crasPrimWINSServer => '1.3.6.1.4.1.9.9.392.1.3.21.1.22', + crasSecWINSServerAddrType => '1.3.6.1.4.1.9.9.392.1.3.21.1.23', + crasSecWINSServer => '1.3.6.1.4.1.9.9.392.1.3.21.1.24', + crasPrimDNSServerAddrType => '1.3.6.1.4.1.9.9.392.1.3.21.1.25', + crasPrimDNSServer => '1.3.6.1.4.1.9.9.392.1.3.21.1.26', + crasSecDNSServerAddrType => '1.3.6.1.4.1.9.9.392.1.3.21.1.27', + crasSecDNSServer => '1.3.6.1.4.1.9.9.392.1.3.21.1.28', + crasDHCPServerAddrType => '1.3.6.1.4.1.9.9.392.1.3.21.1.29', + crasDHCPServer => '1.3.6.1.4.1.9.9.392.1.3.21.1.30', + crasSessionInPkts => '1.3.6.1.4.1.9.9.392.1.3.21.1.31', + crasSessionOutPkts => '1.3.6.1.4.1.9.9.392.1.3.21.1.32', + crasSessionInDropPkts => '1.3.6.1.4.1.9.9.392.1.3.21.1.33', + crasSessionOutDropPkts => '1.3.6.1.4.1.9.9.392.1.3.21.1.34', + crasSessionInOctets => '1.3.6.1.4.1.9.9.392.1.3.21.1.35', + crasSessionOutOctets => '1.3.6.1.4.1.9.9.392.1.3.21.1.36', + crasSessionState => '1.3.6.1.4.1.9.9.392.1.3.21.1.37', + crasSessionStateDefinition => 'CISCO-REMOTE-ACCESS-MONITOR-MIB::SessionStatus', + crasActGroupTable => '1.3.6.1.4.1.9.9.392.1.3.22', + crasActGroupEntry => '1.3.6.1.4.1.9.9.392.1.3.22.1', + crasActGrpName => '1.3.6.1.4.1.9.9.392.1.3.22.1.1', + crasActGrNumUsers => '1.3.6.1.4.1.9.9.392.1.3.22.1.2', + crasActGrpInPkts => '1.3.6.1.4.1.9.9.392.1.3.22.1.3', + crasActGrpOutPkts => '1.3.6.1.4.1.9.9.392.1.3.22.1.4', + crasActGrpInDropPkts => '1.3.6.1.4.1.9.9.392.1.3.22.1.5', + crasActGrpOutDropPkts => '1.3.6.1.4.1.9.9.392.1.3.22.1.6', + crasActGrpInOctets => '1.3.6.1.4.1.9.9.392.1.3.22.1.7', + crasActGrpOutOctets => '1.3.6.1.4.1.9.9.392.1.3.22.1.8', + crasEmailNumSessions => '1.3.6.1.4.1.9.9.392.1.3.23', + crasEmailCumulateSessions => '1.3.6.1.4.1.9.9.392.1.3.24', + crasEmailPeakConcurrentSessions => '1.3.6.1.4.1.9.9.392.1.3.25', + crasIPSecNumSessions => '1.3.6.1.4.1.9.9.392.1.3.26', + crasIPSecCumulateSessions => '1.3.6.1.4.1.9.9.392.1.3.27', + crasIPSecPeakConcurrentSessions => '1.3.6.1.4.1.9.9.392.1.3.28', + crasL2LNumSessions => '1.3.6.1.4.1.9.9.392.1.3.29', + crasL2LCumulateSessions => '1.3.6.1.4.1.9.9.392.1.3.30', + crasL2LPeakConcurrentSessions => '1.3.6.1.4.1.9.9.392.1.3.31', + crasLBNumSessions => '1.3.6.1.4.1.9.9.392.1.3.32', + crasLBCumulateSessions => '1.3.6.1.4.1.9.9.392.1.3.33', + crasLBPeakConcurrentSessions => '1.3.6.1.4.1.9.9.392.1.3.34', + crasSVCNumSessions => '1.3.6.1.4.1.9.9.392.1.3.35', + crasSVCCumulateSessions => '1.3.6.1.4.1.9.9.392.1.3.36', + crasSVCPeakConcurrentSessions => '1.3.6.1.4.1.9.9.392.1.3.37', + crasWebvpnNumSessions => '1.3.6.1.4.1.9.9.392.1.3.38', + crasWebvpnCumulateSessions => '1.3.6.1.4.1.9.9.392.1.3.39', + crasWebvpnPeakConcurrentSessions => '1.3.6.1.4.1.9.9.392.1.3.40', + crasFailures => '1.3.6.1.4.1.9.9.392.1.4', + crasFailuresGlobals => '1.3.6.1.4.1.9.9.392.1.4.1', + crasNumTotalFailures => '1.3.6.1.4.1.9.9.392.1.4.1.1', + crasNumDeclinedSessions => '1.3.6.1.4.1.9.9.392.1.4.1.2', + crasNumSetupFailInsufResources => '1.3.6.1.4.1.9.9.392.1.4.1.3', + crasNumAbortedSessions => '1.3.6.1.4.1.9.9.392.1.4.1.4', + crasFailGlobalCntl => '1.3.6.1.4.1.9.9.392.1.4.2', + crasFailTableSize => '1.3.6.1.4.1.9.9.392.1.4.2.1', + crasSessFailures => '1.3.6.1.4.1.9.9.392.1.4.3', + crasSessFailTable => '1.3.6.1.4.1.9.9.392.1.4.3.1', + crasSessFailEntry => '1.3.6.1.4.1.9.9.392.1.4.3.1.1', + crasSessFailIndex => '1.3.6.1.4.1.9.9.392.1.4.3.1.1.1', + crasSessFailUsername => '1.3.6.1.4.1.9.9.392.1.4.3.1.1.2', + crasSessFailGroupname => '1.3.6.1.4.1.9.9.392.1.4.3.1.1.3', + crasSessFailType => '1.3.6.1.4.1.9.9.392.1.4.3.1.1.4', + crasSessFailTypeDefinition => 'CISCO-REMOTE-ACCESS-MONITOR-MIB::crasSessFailType', + crasSessFailReason => '1.3.6.1.4.1.9.9.392.1.4.3.1.1.5', + crasSessFailReasonDefinition => 'CISCO-REMOTE-ACCESS-MONITOR-MIB::crasSessFailReason', + crasSessFailTime => '1.3.6.1.4.1.9.9.392.1.4.3.1.1.6', + crasSessFailSessionIndex => '1.3.6.1.4.1.9.9.392.1.4.3.1.1.7', + crasSessFailISPAddrType => '1.3.6.1.4.1.9.9.392.1.4.3.1.1.8', + crasSessFailISPAddr => '1.3.6.1.4.1.9.9.392.1.4.3.1.1.9', + crasSessFailLocalAddrType => '1.3.6.1.4.1.9.9.392.1.4.3.1.1.10', + crasSessFailLocalAddr => '1.3.6.1.4.1.9.9.392.1.4.3.1.1.11', + crasFailLastFailIndex => '1.3.6.1.4.1.9.9.392.1.4.3.2', + crasGroupFailures => '1.3.6.1.4.1.9.9.392.1.4.4', + crasGrpFailTable => '1.3.6.1.4.1.9.9.392.1.4.4.1', + crasGrpFailEntry => '1.3.6.1.4.1.9.9.392.1.4.4.1.1', + crasGrpFailGroupname => '1.3.6.1.4.1.9.9.392.1.4.4.1.1.1', + crasGrpFailNumFailAuths => '1.3.6.1.4.1.9.9.392.1.4.4.1.1.2', + crasGrpFailNumResourceFailures => '1.3.6.1.4.1.9.9.392.1.4.4.1.1.3', + crasGrpFailNumDeclined => '1.3.6.1.4.1.9.9.392.1.4.4.1.1.4', + crasGrpFailNumTerminatedMgmt => '1.3.6.1.4.1.9.9.392.1.4.4.1.1.5', + crasGrpFailNumTerminatedOther => '1.3.6.1.4.1.9.9.392.1.4.4.1.1.6', + crasSecurity => '1.3.6.1.4.1.9.9.392.1.5', + crasSecurityGlobals => '1.3.6.1.4.1.9.9.392.1.5.1', + crasNumDisabledAccounts => '1.3.6.1.4.1.9.9.392.1.5.1.1', + crasThresholds => '1.3.6.1.4.1.9.9.392.1.6', + crasThrMaxSessions => '1.3.6.1.4.1.9.9.392.1.6.1', + crasThrMaxFailedAuths => '1.3.6.1.4.1.9.9.392.1.6.2', + crasThrMaxThroughput => '1.3.6.1.4.1.9.9.392.1.6.3', + crasNotifCntl => '1.3.6.1.4.1.9.9.392.1.7', + crasCntlTooManySessions => '1.3.6.1.4.1.9.9.392.1.7.1', + crasCntlTooManyFailedAuths => '1.3.6.1.4.1.9.9.392.1.7.2', + crasCntlTooHighThroughput => '1.3.6.1.4.1.9.9.392.1.7.3', + ciscoRasMonitorMIBConform => '1.3.6.1.4.1.9.9.392.2', + ciscoRasMonitorMIBCompliances => '1.3.6.1.4.1.9.9.392.2.1', + ciscoRasMonitorMIBGroups => '1.3.6.1.4.1.9.9.392.2.2', +}; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'CISCO-REMOTE-ACCESS-MONITOR-MIB'} = { + SessionEncrAlgo => { + '1' => 'none', + '2' => 'des', + '3' => 'des3', + '4' => 'rc4', + '5' => 'rc5', + '6' => 'idea', + '7' => 'cast', + '8' => 'blowfish', + '9' => 'aes', + }, + crasSessFailType => { + '1' => 'setupFailure', + '2' => 'operationalFailure', + }, + RasProtocol => { + '1' => 'other', + '2' => 'ipsec', + '3' => 'l2tp', + '4' => 'l2tpoveripsec', + '5' => 'pptp', + '6' => 'l2f', + '7' => 'ssl', + }, + SessionStatus => { + '1' => 'initializing', + '2' => 'established', + '3' => 'terminating', + }, + UserAuthenMethod => { + '1' => 'none', + '2' => 'other', + '3' => 'radius', + '4' => 'tacacsplus', + '5' => 'kerberos', + '6' => 'local', + '7' => 'ldap', + '8' => 'ntlm', + '9' => 'sdi', + }, + SessionCompressionAlgo => { + '1' => 'none', + '2' => 'other', + '3' => 'lzs', + }, + SessionAuthAlgo => { + '1' => 'none', + '2' => 'other', + '3' => 'hmacMd5', + '4' => 'hmacSha', + }, + UserAuthorMethod => { + '1' => 'none', + '2' => 'other', + '3' => 'radius', + '4' => 'tacacsplus', + '5' => 'kerberos', + '6' => 'local', + '7' => 'ldap', + }, + crasSessFailReason => { + '1' => 'other', + '2' => 'internalError', + '3' => 'authenticationFailure', + '4' => 'authorizationFailure', + '5' => 'sysCapExceeded', + '6' => 'peerAbortRequest', + '7' => 'peerLost', + '8' => 'operRequest', + }, +}; diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBHWENVIROMENTMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBHWENVIROMENTMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBHWENVIROMENTMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBHWENVIROMENTMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBRNDMNGMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBRNDMNGMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBRNDMNGMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBRNDMNGMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBSYSMNGMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBSYSMNGMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBSYSMNGMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBSYSMNGMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBTUNINGMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBTUNINGMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBTUNINGMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBTUNINGMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSTACKMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSTACKMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSTACKMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSTACKMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSTACKWISEMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSTACKWISEMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSTACKWISEMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSTACKWISEMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSYSTEMEXTMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSYSTEMEXTMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSYSTEMEXTMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSYSTEMEXTMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOVTPMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOVTPMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOVTPMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOVTPMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CLAVISTERMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CLAVISTERMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CLAVISTERMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CLAVISTERMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/DISKMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/DISKMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/DISKMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/DISKMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ELTEXMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ELTEXMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ELTEXMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ELTEXMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ENTITYMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ENTITYMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ENTITYMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ENTITYMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ENTITYSENSORMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ENTITYSENSORMIB.pm new file mode 100644 index 0000000..8b9af45 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ENTITYSENSORMIB.pm @@ -0,0 +1,71 @@ +package Monitoring::GLPlugin::SNMP::MibsAndOids::ENTITYSENSORMIB; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::origin->{'ENTITY-SENSOR-MIB'} = { + url => '', + name => 'ENTITY-SENSOR-MIB', +}; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{'ENTITY-SENSOR-MIB'} = + '1.3.6.1.2.1.99'; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'ENTITY-SENSOR-MIB'} = { + entitySensorMIB => '1.3.6.1.2.1.99', + entitySensorObjects => '1.3.6.1.2.1.99.1', + entPhySensorTable => '1.3.6.1.2.1.99.1.1', + entPhySensorEntry => '1.3.6.1.2.1.99.1.1.1', + entPhySensorType => '1.3.6.1.2.1.99.1.1.1.1', + entPhySensorTypeDefinition => 'ENTITY-SENSOR-MIB::EntitySensorDataType', + entPhySensorScale => '1.3.6.1.2.1.99.1.1.1.2', + entPhySensorScaleDefinition => 'ENTITY-SENSOR-MIB::EntitySensorDataScale', + entPhySensorPrecision => '1.3.6.1.2.1.99.1.1.1.3', + entPhySensorValue => '1.3.6.1.2.1.99.1.1.1.4', + entPhySensorOperStatus => '1.3.6.1.2.1.99.1.1.1.5', + entPhySensorOperStatusDefinition => 'ENTITY-SENSOR-MIB::EntitySensorStatus', + entPhySensorUnitsDisplay => '1.3.6.1.2.1.99.1.1.1.6', + entPhySensorValueTimeStamp => '1.3.6.1.2.1.99.1.1.1.7', + entPhySensorValueUpdateRate => '1.3.6.1.2.1.99.1.1.1.8', + entitySensorConformance => '1.3.6.1.2.1.99.3', + entitySensorCompliances => '1.3.6.1.2.1.99.3.1', + entitySensorGroups => '1.3.6.1.2.1.99.3.2', +}; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'ENTITY-SENSOR-MIB'} = { + EntitySensorDataType => { + '1' => 'other', + '2' => 'unknown', + '3' => 'voltsAC', + '4' => 'voltsDC', + '5' => 'amperes', + '6' => 'watts', + '7' => 'hertz', + '8' => 'celsius', + '9' => 'percentRH', + '10' => 'rpm', + '11' => 'cmm', + '12' => 'truthvalue', + }, + EntitySensorDataScale => { + '1' => 'yocto', + '2' => 'zepto', + '3' => 'atto', + '4' => 'femto', + '5' => 'pico', + '6' => 'nano', + '7' => 'micro', + '8' => 'milli', + '9' => 'units', + '10' => 'kilo', + '11' => 'mega', + '12' => 'giga', + '13' => 'tera', + '14' => 'exa', + '15' => 'peta', + '16' => 'zetta', + '17' => 'yotta', + }, + EntitySensorStatus => { + '1' => 'ok', + '2' => 'unavailable', + '3' => 'nonoperational', + }, +}; diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ENTITYSTATEMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ENTITYSTATEMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ENTITYSTATEMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ENTITYSTATEMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ETHERLIKEMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ETHERLIKEMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ETHERLIKEMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ETHERLIKEMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPAPMMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPAPMMIB.pm new file mode 100644 index 0000000..8870051 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPAPMMIB.pm @@ -0,0 +1,395 @@ +package Monitoring::GLPlugin::SNMP::MibsAndOids::F5BIGIPAPMMIB; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::origin->{'F5-BIGIP-APM-MIB'} = { + url => '', + name => 'F5-BIGIP-APM-MIB', +}; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{'F5-BIGIP-APM-MIB'} = + '1.3.6.1.4.1.3375.2.6'; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'F5-BIGIP-APM-MIB'} = { + bigipApm => '1.3.6.1.4.1.3375.2.6', + apmProfiles => '1.3.6.1.4.1.3375.2.6.1', + apmProfileAccessStat => '1.3.6.1.4.1.3375.2.6.1.1', + apmPaStatResetStats => '1.3.6.1.4.1.3375.2.6.1.1.1', + apmPaStatNumber => '1.3.6.1.4.1.3375.2.6.1.1.2', + apmPaStatTable => '1.3.6.1.4.1.3375.2.6.1.1.3', + apmPaStatEntry => '1.3.6.1.4.1.3375.2.6.1.1.3.1', + apmPaStatName => '1.3.6.1.4.1.3375.2.6.1.1.3.1.1', + apmPaStatConfigSyncState => '1.3.6.1.4.1.3375.2.6.1.1.3.1.2', + apmPaStatTotalSessions => '1.3.6.1.4.1.3375.2.6.1.1.3.1.3', + apmPaStatTotalEstablishedStateSessions => '1.3.6.1.4.1.3375.2.6.1.1.3.1.4', + apmPaStatCurrentActiveSessions => '1.3.6.1.4.1.3375.2.6.1.1.3.1.5', + apmPaStatCurrentPendingSessions => '1.3.6.1.4.1.3375.2.6.1.1.3.1.6', + apmPaStatCurrentCompletedSessions => '1.3.6.1.4.1.3375.2.6.1.1.3.1.7', + apmPaStatUserLoggedoutSessions => '1.3.6.1.4.1.3375.2.6.1.1.3.1.8', + apmPaStatAdminTerminatedSessions => '1.3.6.1.4.1.3375.2.6.1.1.3.1.9', + apmPaStatMiscTerminatedSessions => '1.3.6.1.4.1.3375.2.6.1.1.3.1.10', + apmPaStatAccessPolicyResultAllow => '1.3.6.1.4.1.3375.2.6.1.1.3.1.11', + apmPaStatAccessPolicyResultDeny => '1.3.6.1.4.1.3375.2.6.1.1.3.1.12', + apmPaStatAccessPolicyResultRedirect => '1.3.6.1.4.1.3375.2.6.1.1.3.1.13', + apmPaStatAccessPolicyResultRedirectWithSession => '1.3.6.1.4.1.3375.2.6.1.1.3.1.14', + apmPaStatEndingDenyAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.15', + apmPaStatEndingDenyAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.16', + apmPaStatEndingDenyAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.17', + apmPaStatEndingDenyAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.18', + apmPaStatEndingDenyAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.19', + apmPaStatEndingDenyAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.20', + apmPaStatEndingRedirectAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.21', + apmPaStatEndingRedirectAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.22', + apmPaStatEndingRedirectAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.23', + apmPaStatEndingRedirectAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.24', + apmPaStatEndingRedirectAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.25', + apmPaStatEndingRedirectAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.26', + apmPaStatEndingAllowAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.27', + apmPaStatEndingAllowAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.28', + apmPaStatEndingAllowAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.29', + apmPaStatEndingAllowAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.30', + apmPaStatEndingAllowAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.31', + apmPaStatEndingAllowAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.32', + apmPaStatAdAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.33', + apmPaStatAdAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.34', + apmPaStatAdAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.35', + apmPaStatAdAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.36', + apmPaStatAdAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.37', + apmPaStatAdAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.38', + apmPaStatClientCertAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.39', + apmPaStatClientCertAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.40', + apmPaStatClientCertAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.41', + apmPaStatClientCertAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.42', + apmPaStatClientCertAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.43', + apmPaStatClientCertAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.44', + apmPaStatHttpAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.45', + apmPaStatHttpAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.46', + apmPaStatHttpAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.47', + apmPaStatHttpAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.48', + apmPaStatHttpAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.49', + apmPaStatHttpAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.50', + apmPaStatLdapAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.51', + apmPaStatLdapAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.52', + apmPaStatLdapAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.53', + apmPaStatLdapAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.54', + apmPaStatLdapAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.55', + apmPaStatLdapAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.56', + apmPaStatRadiusAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.57', + apmPaStatRadiusAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.58', + apmPaStatRadiusAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.59', + apmPaStatRadiusAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.60', + apmPaStatRadiusAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.61', + apmPaStatRadiusAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.62', + apmPaStatSecuridAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.63', + apmPaStatSecuridAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.64', + apmPaStatSecuridAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.65', + apmPaStatSecuridAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.66', + apmPaStatSecuridAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.67', + apmPaStatSecuridAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.68', + apmPaStatRadiusAcctAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.69', + apmPaStatRadiusAcctAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.70', + apmPaStatRadiusAcctAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.71', + apmPaStatRadiusAcctAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.72', + apmPaStatRadiusAcctAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.73', + apmPaStatRadiusAcctAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.74', + apmPaStatEpsLinuxFcAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.75', + apmPaStatEpsLinuxFcAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.76', + apmPaStatEpsLinuxFcAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.77', + apmPaStatEpsLinuxFcAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.78', + apmPaStatEpsLinuxFcAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.79', + apmPaStatEpsLinuxFcAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.80', + apmPaStatEpsLinuxPcAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.81', + apmPaStatEpsLinuxPcAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.82', + apmPaStatEpsLinuxPcAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.83', + apmPaStatEpsLinuxPcAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.84', + apmPaStatEpsLinuxPcAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.85', + apmPaStatEpsLinuxPcAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.86', + apmPaStatEpsMacFcAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.87', + apmPaStatEpsMacFcAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.88', + apmPaStatEpsMacFcAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.89', + apmPaStatEpsMacFcAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.90', + apmPaStatEpsMacFcAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.91', + apmPaStatEpsMacFcAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.92', + apmPaStatEpsMacPcAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.93', + apmPaStatEpsMacPcAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.94', + apmPaStatEpsMacPcAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.95', + apmPaStatEpsMacPcAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.96', + apmPaStatEpsMacPcAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.97', + apmPaStatEpsMacPcAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.98', + apmPaStatEpsWinCcAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.99', + apmPaStatEpsWinCcAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.100', + apmPaStatEpsWinCcAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.101', + apmPaStatEpsWinCcAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.102', + apmPaStatEpsWinCcAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.103', + apmPaStatEpsWinCcAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.104', + apmPaStatEpsAvAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.105', + apmPaStatEpsAvAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.106', + apmPaStatEpsAvAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.107', + apmPaStatEpsAvAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.108', + apmPaStatEpsAvAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.109', + apmPaStatEpsAvAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.110', + apmPaStatEpsWinOsInfoAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.111', + apmPaStatEpsWinOsInfoAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.112', + apmPaStatEpsWinOsInfoAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.113', + apmPaStatEpsWinOsInfoAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.114', + apmPaStatEpsWinOsInfoAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.115', + apmPaStatEpsWinOsInfoAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.116', + apmPaStatEpsWinFcAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.117', + apmPaStatEpsWinFcAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.118', + apmPaStatEpsWinFcAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.119', + apmPaStatEpsWinFcAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.120', + apmPaStatEpsWinFcAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.121', + apmPaStatEpsWinFcAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.122', + apmPaStatEpsWinMcAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.123', + apmPaStatEpsWinMcAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.124', + apmPaStatEpsWinMcAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.125', + apmPaStatEpsWinMcAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.126', + apmPaStatEpsWinMcAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.127', + apmPaStatEpsWinMcAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.128', + apmPaStatEpsFwcAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.129', + apmPaStatEpsFwcAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.130', + apmPaStatEpsFwcAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.131', + apmPaStatEpsFwcAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.132', + apmPaStatEpsFwcAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.133', + apmPaStatEpsFwcAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.134', + apmPaStatEpsWinPcTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.135', + apmPaStatEpsWinPcTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.136', + apmPaStatEpsWinPcTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.137', + apmPaStatEpsWinPcTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.138', + apmPaStatEpsWinPcTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.139', + apmPaStatEpsWinPcTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.140', + apmPaStatEpsWinPwTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.141', + apmPaStatEpsWinPwTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.142', + apmPaStatEpsWinPwTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.143', + apmPaStatEpsWinPwTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.144', + apmPaStatEpsWinPwTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.145', + apmPaStatEpsWinPwTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.146', + apmPaStatEpsWinRcAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.147', + apmPaStatEpsWinRcAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.148', + apmPaStatEpsWinRcAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.149', + apmPaStatEpsWinRcAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.150', + apmPaStatEpsWinRcAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.151', + apmPaStatEpsWinRcAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.152', + apmPaStatEpsWinGpAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.153', + apmPaStatEpsWinGpAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.154', + apmPaStatEpsWinGpAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.155', + apmPaStatEpsWinGpAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.156', + apmPaStatEpsWinGpAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.157', + apmPaStatEpsWinGpAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.158', + apmPaStatExternalLogonAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.159', + apmPaStatExternalLogonAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.160', + apmPaStatExternalLogonAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.161', + apmPaStatExternalLogonAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.162', + apmPaStatExternalLogonAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.163', + apmPaStatExternalLogonAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.164', + apmPaStatLogonAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.165', + apmPaStatLogonAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.166', + apmPaStatLogonAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.167', + apmPaStatLogonAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.168', + apmPaStatLogonAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.169', + apmPaStatLogonAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.170', + apmPaStatRaAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.171', + apmPaStatRaAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.172', + apmPaStatRaAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.173', + apmPaStatRaAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.174', + apmPaStatRaAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.175', + apmPaStatRaAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.176', + apmPaStatRdsAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.177', + apmPaStatRdsAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.178', + apmPaStatRdsAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.179', + apmPaStatRdsAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.180', + apmPaStatRdsAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.181', + apmPaStatRdsAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.182', + apmPaStatVaAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.183', + apmPaStatVaAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.184', + apmPaStatVaAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.185', + apmPaStatVaAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.186', + apmPaStatVaAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.187', + apmPaStatVaAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.188', + apmPaStatIeAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.189', + apmPaStatIeAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.190', + apmPaStatIeAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.191', + apmPaStatIeAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.192', + apmPaStatIeAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.193', + apmPaStatIeAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.194', + apmPaStatLoggingAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.195', + apmPaStatLoggingAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.196', + apmPaStatLoggingAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.197', + apmPaStatLoggingAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.198', + apmPaStatLoggingAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.199', + apmPaStatLoggingAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.200', + apmPaStatDecnBoxAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.201', + apmPaStatDecnBoxAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.202', + apmPaStatDecnBoxAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.203', + apmPaStatDecnBoxAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.204', + apmPaStatDecnBoxAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.205', + apmPaStatDecnBoxAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.206', + apmPaStatMesgBoxAgentTotalInstances => '1.3.6.1.4.1.3375.2.6.1.1.3.1.207', + apmPaStatMesgBoxAgentTotalUsages => '1.3.6.1.4.1.3375.2.6.1.1.3.1.208', + apmPaStatMesgBoxAgentTotalSuccesses => '1.3.6.1.4.1.3375.2.6.1.1.3.1.209', + apmPaStatMesgBoxAgentTotalFailures => '1.3.6.1.4.1.3375.2.6.1.1.3.1.210', + apmPaStatMesgBoxAgentTotalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.211', + apmPaStatMesgBoxAgentTotalSessVars => '1.3.6.1.4.1.3375.2.6.1.1.3.1.212', + apmPaStatApdNoResultErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.213', + apmPaStatApdNoSessionErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.214', + apmPaStatApdNoDeviceInfoErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.215', + apmPaStatApdNoTokenErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.216', + apmPaStatApdNoSigErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.217', + apmPaStatApdTotalMismatchErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.218', + apmPaStatApdInvalidSigErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.219', + apmPaStatApdMcPipelineInitErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.220', + apmPaStatApdMcSetSessVarErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.221', + apmPaStatApdMcPipelineCloseErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.222', + apmPaStatApdApResultErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.223', + apmPaStatApdApInternalErrors => '1.3.6.1.4.1.3375.2.6.1.1.3.1.224', + apmPaStatAllowedRequests => '1.3.6.1.4.1.3375.2.6.1.1.3.1.225', + apmPaStatDeniedRequests => '1.3.6.1.4.1.3375.2.6.1.1.3.1.226', + apmPaStatVsName => '1.3.6.1.4.1.3375.2.6.1.1.3.1.227', + apmPaStatSessionsEvalTimedOut => '1.3.6.1.4.1.3375.2.6.1.1.3.1.228', + apmPaStatSessionsEstabTimedOut => '1.3.6.1.4.1.3375.2.6.1.1.3.1.229', + apmProfileConnectivityStat => '1.3.6.1.4.1.3375.2.6.1.2', + apmPcStatResetStats => '1.3.6.1.4.1.3375.2.6.1.2.1', + apmPcStatNumber => '1.3.6.1.4.1.3375.2.6.1.2.2', + apmPcStatTable => '1.3.6.1.4.1.3375.2.6.1.2.3', + apmPcStatEntry => '1.3.6.1.4.1.3375.2.6.1.2.3.1', + apmPcStatName => '1.3.6.1.4.1.3375.2.6.1.2.3.1.1', + apmPcStatTotConns => '1.3.6.1.4.1.3375.2.6.1.2.3.1.2', + apmPcStatCurConns => '1.3.6.1.4.1.3375.2.6.1.2.3.1.3', + apmPcStatMaxConns => '1.3.6.1.4.1.3375.2.6.1.2.3.1.4', + apmPcStatIngressRaw => '1.3.6.1.4.1.3375.2.6.1.2.3.1.5', + apmPcStatEgressRaw => '1.3.6.1.4.1.3375.2.6.1.2.3.1.6', + apmPcStatIngressCompressed => '1.3.6.1.4.1.3375.2.6.1.2.3.1.7', + apmPcStatEgressCompressed => '1.3.6.1.4.1.3375.2.6.1.2.3.1.8', + apmProfileRewriteStat => '1.3.6.1.4.1.3375.2.6.1.3', + apmPrStatResetStats => '1.3.6.1.4.1.3375.2.6.1.3.1', + apmPrStatNumber => '1.3.6.1.4.1.3375.2.6.1.3.2', + apmPrStatTable => '1.3.6.1.4.1.3375.2.6.1.3.3', + apmPrStatEntry => '1.3.6.1.4.1.3375.2.6.1.3.3.1', + apmPrStatName => '1.3.6.1.4.1.3375.2.6.1.3.3.1.1', + apmPrStatClientReqBytes => '1.3.6.1.4.1.3375.2.6.1.3.3.1.2', + apmPrStatClientRespBytes => '1.3.6.1.4.1.3375.2.6.1.3.3.1.3', + apmPrStatServerReqBytes => '1.3.6.1.4.1.3375.2.6.1.3.3.1.4', + apmPrStatServerRespBytes => '1.3.6.1.4.1.3375.2.6.1.3.3.1.5', + apmPrStatClientReqs => '1.3.6.1.4.1.3375.2.6.1.3.3.1.6', + apmPrStatClientResps => '1.3.6.1.4.1.3375.2.6.1.3.3.1.7', + apmPrStatServerReqs => '1.3.6.1.4.1.3375.2.6.1.3.3.1.8', + apmPrStatServerResps => '1.3.6.1.4.1.3375.2.6.1.3.3.1.9', + apmAccessStat => '1.3.6.1.4.1.3375.2.6.1.4', + apmAccessStatResetStats => '1.3.6.1.4.1.3375.2.6.1.4.1', + apmAccessStatTotalSessions => '1.3.6.1.4.1.3375.2.6.1.4.2', + apmAccessStatCurrentActiveSessions => '1.3.6.1.4.1.3375.2.6.1.4.3', + apmAccessStatCurrentPendingSessions => '1.3.6.1.4.1.3375.2.6.1.4.4', + apmAccessStatCurrentEndedSessions => '1.3.6.1.4.1.3375.2.6.1.4.5', + apmAccessStatUserLoggedoutSessions => '1.3.6.1.4.1.3375.2.6.1.4.6', + apmAccessStatAdminTerminatedSessions => '1.3.6.1.4.1.3375.2.6.1.4.7', + apmAccessStatMiscTerminatedSessions => '1.3.6.1.4.1.3375.2.6.1.4.8', + apmAccessStatResultAllow => '1.3.6.1.4.1.3375.2.6.1.4.9', + apmAccessStatResultDeny => '1.3.6.1.4.1.3375.2.6.1.4.10', + apmAccessStatResultRedirect => '1.3.6.1.4.1.3375.2.6.1.4.11', + apmAccessStatResultRedirectWithSession => '1.3.6.1.4.1.3375.2.6.1.4.12', + apmAccessStatSessionsEvalTimedOut => '1.3.6.1.4.1.3375.2.6.1.4.13', + apmAccessStatSessionsEstabTimedOut => '1.3.6.1.4.1.3375.2.6.1.4.14', + apmGlobalConnectivityStat => '1.3.6.1.4.1.3375.2.6.1.5', + apmGlobalConnectivityStatResetStats => '1.3.6.1.4.1.3375.2.6.1.5.1', + apmGlobalConnectivityStatTotConns => '1.3.6.1.4.1.3375.2.6.1.5.2', + apmGlobalConnectivityStatCurConns => '1.3.6.1.4.1.3375.2.6.1.5.3', + apmGlobalConnectivityStatMaxConns => '1.3.6.1.4.1.3375.2.6.1.5.4', + apmGlobalConnectivityStatIngressRaw => '1.3.6.1.4.1.3375.2.6.1.5.5', + apmGlobalConnectivityStatEgressRaw => '1.3.6.1.4.1.3375.2.6.1.5.6', + apmGlobalConnectivityStatIngressCompressed => '1.3.6.1.4.1.3375.2.6.1.5.7', + apmGlobalConnectivityStatEgressCompressed => '1.3.6.1.4.1.3375.2.6.1.5.8', + apmGlobalRewriteStat => '1.3.6.1.4.1.3375.2.6.1.6', + apmGlobalRewriteStatResetStats => '1.3.6.1.4.1.3375.2.6.1.6.1', + apmGlobalRewriteStatClientReqBytes => '1.3.6.1.4.1.3375.2.6.1.6.2', + apmGlobalRewriteStatClientRespBytes => '1.3.6.1.4.1.3375.2.6.1.6.3', + apmGlobalRewriteStatServerReqBytes => '1.3.6.1.4.1.3375.2.6.1.6.4', + apmGlobalRewriteStatServerRespBytes => '1.3.6.1.4.1.3375.2.6.1.6.5', + apmGlobalRewriteStatClientReqs => '1.3.6.1.4.1.3375.2.6.1.6.6', + apmGlobalRewriteStatClientResps => '1.3.6.1.4.1.3375.2.6.1.6.7', + apmGlobalRewriteStatServerReqs => '1.3.6.1.4.1.3375.2.6.1.6.8', + apmGlobalRewriteStatServerResps => '1.3.6.1.4.1.3375.2.6.1.6.9', + apmProfileAccessAgentStat => '1.3.6.1.4.1.3375.2.6.1.7', + apmPgStatResetStats => '1.3.6.1.4.1.3375.2.6.1.7.1', + apmPgStatNumber => '1.3.6.1.4.1.3375.2.6.1.7.2', + apmPgStatTable => '1.3.6.1.4.1.3375.2.6.1.7.3', + apmPgStatEntry => '1.3.6.1.4.1.3375.2.6.1.7.3.1', + apmPgStatName => '1.3.6.1.4.1.3375.2.6.1.7.3.1.1', + apmPgStatAgentName => '1.3.6.1.4.1.3375.2.6.1.7.3.1.2', + apmPgStatInstances => '1.3.6.1.4.1.3375.2.6.1.7.3.1.3', + apmPgStatUsages => '1.3.6.1.4.1.3375.2.6.1.7.3.1.4', + apmPgStatSuccesses => '1.3.6.1.4.1.3375.2.6.1.7.3.1.5', + apmPgStatFailures => '1.3.6.1.4.1.3375.2.6.1.7.3.1.6', + apmPgStatErrors => '1.3.6.1.4.1.3375.2.6.1.7.3.1.7', + apmPgStatSessionVars => '1.3.6.1.4.1.3375.2.6.1.7.3.1.8', + apmProfileAccessMiscStat => '1.3.6.1.4.1.3375.2.6.1.8', + apmPmStatResetStats => '1.3.6.1.4.1.3375.2.6.1.8.1', + apmPmStatNumber => '1.3.6.1.4.1.3375.2.6.1.8.2', + apmPmStatTable => '1.3.6.1.4.1.3375.2.6.1.8.3', + apmPmStatEntry => '1.3.6.1.4.1.3375.2.6.1.8.3.1', + apmPmStatName => '1.3.6.1.4.1.3375.2.6.1.8.3.1.1', + apmPmStatConfigSyncState => '1.3.6.1.4.1.3375.2.6.1.8.3.1.2', + apmPmStatInspResultError => '1.3.6.1.4.1.3375.2.6.1.8.3.1.3', + apmPmStatInspSessionError => '1.3.6.1.4.1.3375.2.6.1.8.3.1.4', + apmPmStatInspDeviceInfoError => '1.3.6.1.4.1.3375.2.6.1.8.3.1.5', + apmPmStatInspTokenError => '1.3.6.1.4.1.3375.2.6.1.8.3.1.6', + apmPmStatInspSignatureError => '1.3.6.1.4.1.3375.2.6.1.8.3.1.7', + apmPmStatInspDataMsmtchError => '1.3.6.1.4.1.3375.2.6.1.8.3.1.8', + apmPmStatInspClientSignError => '1.3.6.1.4.1.3375.2.6.1.8.3.1.9', + apmPmStatMemInitError => '1.3.6.1.4.1.3375.2.6.1.8.3.1.10', + apmPmStatMemSessionVarError => '1.3.6.1.4.1.3375.2.6.1.8.3.1.11', + apmPmStatMemCloseError => '1.3.6.1.4.1.3375.2.6.1.8.3.1.12', + apmPmStatResultError => '1.3.6.1.4.1.3375.2.6.1.8.3.1.13', + apmPmStatInternalError => '1.3.6.1.4.1.3375.2.6.1.8.3.1.14', + apmGlobalLicenseStat => '1.3.6.1.4.1.3375.2.6.1.9', + apmGlobalLicenseStatResetStats => '1.3.6.1.4.1.3375.2.6.1.9.1', + apmGlobalLicenseStatTotalAccessSessions => '1.3.6.1.4.1.3375.2.6.1.9.2', + apmGlobalLicenseStatTotalConnectivitySessions => '1.3.6.1.4.1.3375.2.6.1.9.3', + apmGlobalLicenseStatTotalSwgSessions => '1.3.6.1.4.1.3375.2.6.1.9.4', + apmGlobalLicenseStatTotalSwgLimitedSessions => '1.3.6.1.4.1.3375.2.6.1.9.5', + apmLeasepool => '1.3.6.1.4.1.3375.2.6.2', + apmLeasepoolStat => '1.3.6.1.4.1.3375.2.6.2.1', + apmLeasepoolStatResetStats => '1.3.6.1.4.1.3375.2.6.2.1.1', + apmLeasepoolStatNumber => '1.3.6.1.4.1.3375.2.6.2.1.2', + apmLeasepoolStatTable => '1.3.6.1.4.1.3375.2.6.2.1.3', + apmLeasepoolStatEntry => '1.3.6.1.4.1.3375.2.6.2.1.3.1', + apmLeasepoolStatName => '1.3.6.1.4.1.3375.2.6.2.1.3.1.1', + apmLeasepoolStatCurMembers => '1.3.6.1.4.1.3375.2.6.2.1.3.1.2', + apmLeasepoolStatCurAssigned => '1.3.6.1.4.1.3375.2.6.2.1.3.1.3', + apmLeasepoolStatCurFree => '1.3.6.1.4.1.3375.2.6.2.1.3.1.4', + apmLeasepoolStatMaxAssigned => '1.3.6.1.4.1.3375.2.6.2.1.3.1.5', + apmLeasepoolStatTotPickRequests => '1.3.6.1.4.1.3375.2.6.2.1.3.1.6', + apmLeasepoolStatTotPickFailure => '1.3.6.1.4.1.3375.2.6.2.1.3.1.7', + apmLeasepoolStatTotReserveRequests => '1.3.6.1.4.1.3375.2.6.2.1.3.1.8', + apmLeasepoolStatTotReserveFailure => '1.3.6.1.4.1.3375.2.6.2.1.3.1.9', + apmLeasepoolStatTotReleaseRequests => '1.3.6.1.4.1.3375.2.6.2.1.3.1.10', + apmLeasepoolStatTotReleaseFailure => '1.3.6.1.4.1.3375.2.6.2.1.3.1.11', + apmAcl => '1.3.6.1.4.1.3375.2.6.3', + apmAclStat => '1.3.6.1.4.1.3375.2.6.3.1', + apmAclStatResetStats => '1.3.6.1.4.1.3375.2.6.3.1.1', + apmAclStatNumber => '1.3.6.1.4.1.3375.2.6.3.1.2', + apmAclStatTable => '1.3.6.1.4.1.3375.2.6.3.1.3', + apmAclStatEntry => '1.3.6.1.4.1.3375.2.6.3.1.3.1', + apmAclStatName => '1.3.6.1.4.1.3375.2.6.3.1.3.1.1', + apmAclStatActionAllow => '1.3.6.1.4.1.3375.2.6.3.1.3.1.2', + apmAclStatActionContinue => '1.3.6.1.4.1.3375.2.6.3.1.3.1.3', + apmAclStatActionDiscard => '1.3.6.1.4.1.3375.2.6.3.1.3.1.4', + apmAclStatActionReject => '1.3.6.1.4.1.3375.2.6.3.1.3.1.5', + apmIpv6Leasepool => '1.3.6.1.4.1.3375.2.6.4', + apmIpv6LeasepoolStat => '1.3.6.1.4.1.3375.2.6.4.1', + apmIpv6LeasepoolStatResetStats => '1.3.6.1.4.1.3375.2.6.4.1.1', + apmIpv6LeasepoolStatNumber => '1.3.6.1.4.1.3375.2.6.4.1.2', + apmIpv6LeasepoolStatTable => '1.3.6.1.4.1.3375.2.6.4.1.3', + apmIpv6LeasepoolStatEntry => '1.3.6.1.4.1.3375.2.6.4.1.3.1', + apmIpv6LeasepoolStatName => '1.3.6.1.4.1.3375.2.6.4.1.3.1.1', + apmIpv6LeasepoolStatCurMembers => '1.3.6.1.4.1.3375.2.6.4.1.3.1.2', + apmIpv6LeasepoolStatCurAssigned => '1.3.6.1.4.1.3375.2.6.4.1.3.1.3', + apmIpv6LeasepoolStatCurFree => '1.3.6.1.4.1.3375.2.6.4.1.3.1.4', + apmIpv6LeasepoolStatMaxAssigned => '1.3.6.1.4.1.3375.2.6.4.1.3.1.5', + apmIpv6LeasepoolStatTotPickRequests => '1.3.6.1.4.1.3375.2.6.4.1.3.1.6', + apmIpv6LeasepoolStatTotPickFailure => '1.3.6.1.4.1.3375.2.6.4.1.3.1.7', + apmIpv6LeasepoolStatTotReserveRequests => '1.3.6.1.4.1.3375.2.6.4.1.3.1.8', + apmIpv6LeasepoolStatTotReserveFailure => '1.3.6.1.4.1.3375.2.6.4.1.3.1.9', + apmIpv6LeasepoolStatTotReleaseRequests => '1.3.6.1.4.1.3375.2.6.4.1.3.1.10', + apmIpv6LeasepoolStatTotReleaseFailure => '1.3.6.1.4.1.3375.2.6.4.1.3.1.11', +}; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'F5-BIGIP-APM-MIB'} = { +}; diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPGLOBALMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPGLOBALMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPGLOBALMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPGLOBALMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPLOCALMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPLOCALMIB.pm similarity index 99% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPLOCALMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPLOCALMIB.pm index 9aa3131..af85396 100644 --- a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPLOCALMIB.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPLOCALMIB.pm @@ -2558,9 +2558,13 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'F5-BIGIP-LOCAL-MIB'} ltmVirtualServEntry => '1.3.6.1.4.1.3375.2.2.10.1.2.1', ltmVirtualServName => '1.3.6.1.4.1.3375.2.2.10.1.2.1.1', ltmVirtualServAddrType => '1.3.6.1.4.1.3375.2.2.10.1.2.1.2', + ltmVirtualServAddrTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', ltmVirtualServAddr => '1.3.6.1.4.1.3375.2.2.10.1.2.1.3', + ltmVirtualServAddrDefinition => 'INET-ADDRESS-MIB::InetAddress(ltmVirtualServAddrType)', ltmVirtualServWildmaskType => '1.3.6.1.4.1.3375.2.2.10.1.2.1.4', + ltmVirtualServWildmaskTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', ltmVirtualServWildmask => '1.3.6.1.4.1.3375.2.2.10.1.2.1.5', + ltmVirtualServWildmaskDefinition => 'INET-ADDRESS-MIB::InetAddress(ltmVirtualServWildmaskType)', ltmVirtualServPort => '1.3.6.1.4.1.3375.2.2.10.1.2.1.6', ltmVirtualServIpProto => '1.3.6.1.4.1.3375.2.2.10.1.2.1.7', ltmVirtualServListedEnabledVlans => '1.3.6.1.4.1.3375.2.2.10.1.2.1.8', @@ -3211,110 +3215,175 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'F5-BIGIP-LOCAL-MIB'} }; $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'F5-BIGIP-LOCAL-MIB'} = { - ltmDosApplicationLatencyBasedIpRateLimiting => { + ltmDnsQueryFilterType => { + '0' => 'invalid', + '1' => 'a', + '2' => 'ns', + '3' => 'md', + '4' => 'mf', + '5' => 'cname', + '6' => 'soa', + '7' => 'mb', + '8' => 'mg', + '9' => 'mr', + '10' => 'null', + '11' => 'wks', + '12' => 'ptr', + '13' => 'hinfo', + '14' => 'minfo', + '15' => 'mx', + '16' => 'txt', + '17' => 'rp', + '18' => 'afsdb', + '19' => 'x25', + '20' => 'isdn', + '21' => 'rt', + '22' => 'nsap', + '23' => 'nsap-ptr', + '24' => 'sg', + '25' => 'key', + '26' => 'px', + '27' => 'gpos', + '28' => 'aaaa', + '29' => 'loc', + '30' => 'nxt', + '31' => 'eid', + '32' => 'nimloc', + '33' => 'srv', + '34' => 'atma', + '35' => 'naptr', + '36' => 'kx', + '37' => 'cert', + '38' => 'a6', + '39' => 'dname', + '40' => 'sink', + '41' => 'opt', + '249' => 'tkey', + '250' => 'tsig', + '251' => 'ixfr', + '252' => 'axfr', + '253' => 'mailb', + '254' => 'maila', + '255' => 'any', + '256' => 'zxfr', + '65536' => 'max', + }, + ltmVirtualServActualPvaAccel => { + '0' => 'full', + '1' => 'partial', + '2' => 'none', + }, + ltmIsessionProfileDeduplication => { + '0' => 'disabled', + '1' => 'enabled', + }, + ltmTcpProfileAckOnPush => { '0' => 'false', '1' => 'true', }, - ltmFastHttpProfileConnpoolReplenish => { + ltmServerSslUncleanShutdown => { '0' => 'false', '1' => 'true', }, - ltmHttpProfilePassthroughOversizeClientHeaders => { + ltmAlgLogProfileEndControlElementsElements => { + '1' => 'destination', + }, + ltmLsnPoolIcmpEcho => { '0' => 'false', '1' => 'true', }, - ltmTransAddrArpEnabled => { + ltmVirtualAddrRouteAdvertisement => { '0' => 'false', '1' => 'true', }, - ltmLsnLogProfileStartInboundAction => { + ltmTcpProfileDelayWindowControl => { + '0' => 'false', + '1' => 'true', + }, + ltmServerSslAuthenticateOnce => { + '0' => 'false', + '1' => 'true', + }, + ltmUdpProfileAllowNoPayload => { + '0' => 'false', + '1' => 'true', + }, + ltmClientSslFwdpLookupByIpaddrPort => { + '0' => 'false', + '1' => 'true', + }, + ltmFastHttpProfileUncleanShutdown => { + '0' => 'disable', + '1' => 'enable', + '2' => 'fast', + }, + ltmRtspProfileUnicastRedirect => { + '0' => 'false', + '1' => 'true', + }, + ltmTcpProfileResetOnTimeout => { + '0' => 'false', + '1' => 'true', + }, + ltmLsnLogProfileEndOutboundAction => { '1' => 'disabled', '2' => 'enabled', '3' => 'backup-allocation-only', }, - ltmAlgLogProfileEndDataElementsElements => { - '1' => 'destination', + ltmOcspStaplingParametersSignHash => { + '0' => 'sha1', + '1' => 'sha256', }, - ltmPcpProfileConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', - }, - ltmPersistProfileMirror => { + ltmFastL4ProfileRttFromServer => { '0' => 'false', '1' => 'true', }, - ltmServerSslModsslmethods => { + ltmTcpProfileTimeWaitRecycle => { '0' => 'false', '1' => 'true', }, - ltmClientSslConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', + ltmClientSslSslSignHash => { + '0' => 'any', + '1' => 'sha1', + '2' => 'sha256', + '3' => 'sha384', }, - ltmIiopProfileConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', + ltmTcpProfileCongestionCtrl => { + '0' => 'reno', + '1' => 'newreno', + '2' => 'scalable', + '3' => 'highspeed', + '4' => 'none', + '5' => 'vegas', + '6' => 'illinois', + '7' => 'woodside', + '8' => 'chd', + '9' => 'cdg', + '10' => 'cubic', + '11' => 'westwood', }, - ltmUserStatProfileConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', - }, - ltmHttpProfileOneConnect => { + ltmTcpProfileMptcpNojoindssack => { '0' => 'false', '1' => 'true', }, - ltmVirtualServType => { - '0' => 'poolbased', - '1' => 'ipforward', - '2' => 'l2forward', - '3' => 'reject', - '4' => 'fastl4', - '5' => 'fasthttp', - '6' => 'stateless', - '7' => 'dhcp-relay', - '8' => 'internal', - }, - ltmIsessionProfileCompressionDeflate => { - '0' => 'disabled', - '1' => 'enabled', - }, - ltmSctpProfileRcvOrdered => { + ltmVirtualAddrIsFloat => { '0' => 'false', '1' => 'true', }, - ltmStreamProfileConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', - }, - ltmClientSslAuthenticateOnce => { + ltmPersistProfileAcrossServices => { '0' => 'false', '1' => 'true', }, - ltmFtpProfileTranslateExtended => { + ltmLsnLogProfileEndInboundAction => { + '1' => 'disabled', + '2' => 'enabled', + '3' => 'backup-allocation-only', + }, + ltmServerSslProxySslPassthrough => { '0' => 'false', '1' => 'true', }, - ltmPptpProfileConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', - }, - ltmTcpProfileDeferredAccept => { - '0' => 'false', - '1' => 'true', - }, - ltmVirtualServListedEnabledVlans => { - '0' => 'false', - '1' => 'true', - }, - ltmDosApplicationHeavyUrlAutomaticDetection => { - '0' => 'false', - '1' => 'true', - }, - ltmHttpProfilePassthroughExcessClientHeaders => { - '0' => 'false', - '1' => 'true', - }, - ltmFastL4ProfileSoftSyncookie => { + ltmDosApplicationLatencyBasedSiteRateLimiting => { '0' => 'false', '1' => 'true', }, @@ -3323,124 +3392,19 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'F5-BIGIP-LOCAL-MIB'} = '1' => 'external', '2' => 'internal', }, - ltmLsnLogProfileStartOutboundElementsElements => { - '1' => 'destination', - }, - ltmFastL4ProfileRttFromServer => { - '0' => 'false', - '1' => 'true', - }, - ltmServerSslFwdpEnabled => { - '0' => 'false', - '1' => 'true', - }, - ltmHttpProfileRedirectRewrite => { - '0' => 'none', - '1' => 'all', - '2' => 'matching', - '3' => 'nodes', - }, - ltmTcpProfileEcn => { - '0' => 'false', - '1' => 'true', - }, ltmLsnLogProfileEndOutboundElementsElements => { '1' => 'destination', }, - ltmVirtualServSnatType => { - '0' => 'none', - '1' => 'transaddr', - '2' => 'snatpool', - '3' => 'automap', + ltmDnsProfileDnsLastAction => { + '0' => 'allow', + '1' => 'drop', + '2' => 'reject', + '3' => 'hint', + '4' => 'noerror', }, - ltmVirtualModuleScoreModuleType => { - '0' => 'asm', - '1' => 'sam', - '2' => 'wam', - }, - ltmDosApplicationLatencyBasedSiteRateLimiting => { - '0' => 'false', - '1' => 'true', - }, - ltmVirtualServProfileContext => { - '0' => 'all', - '1' => 'client', - '2' => 'server', - }, - ltmClientSslGenericAlert => { - '0' => 'false', - '1' => 'true', - }, - ltmLsnPoolPersistenceMode => { - '0' => 'none', - '1' => 'address', - '2' => 'addressPort', - }, - ltmDnsCacheAnswerDefaultZones => { - '0' => 'no', - '1' => 'yes', - }, - ltmDosApplicationTpsBasedUrlRateLimiting => { - '0' => 'false', - '1' => 'true', - }, - ltmAuthProfileConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', - }, - ltmRateFilterQtype => { - '0' => 'none', - '1' => 'sfq', - '2' => 'pfifo', - }, - ltmHttpCompressionProfileVaryHeader => { - '0' => 'false', - '1' => 'true', - }, - ltmTcpProfileMptcpFastjoin => { - '0' => 'false', - '1' => 'true', - }, - ltmPoolMemberAvailabilityState => { - '0' => 'none', - '1' => 'green', - '2' => 'yellow', - '3' => 'red', - '4' => 'blue', - }, - ltmDosProfileConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', - }, - ltmFastL4ProfileHardSyncookie => { - '0' => 'false', - '1' => 'true', - }, - ltmFastL4ProfilePvaAccelMode => { - '0' => 'full', - '1' => 'partial', - '2' => 'none', - }, - ltmLsnLogProfileStartOutboundAction => { - '1' => 'disabled', - '2' => 'enabled', - '3' => 'backup-allocation-only', - }, - ltmDnsCachePrefetchKey => { - '0' => 'no', - '1' => 'yes', - }, - ltmSnatListedEnabledVlans => { - '0' => 'false', - '1' => 'true', - }, - ltmFastL4ProfileTcpGenerateIsn => { - '0' => 'false', - '1' => 'true', - }, - ltmXmlProfileAbortOnError => { - '0' => 'false', - '1' => 'true', + ltmPoolQueueOnConnectionLimit => { + '0' => 'allowed', + '1' => 'disallowed', }, ltmServerSslSslSignHash => { '0' => 'any', @@ -3448,42 +3412,264 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'F5-BIGIP-LOCAL-MIB'} = '2' => 'sha256', '3' => 'sha384', }, - ltmTcpProfileMptcpDebug => { + ltmTcpProfileVerifiedAccept => { '0' => 'false', '1' => 'true', }, - ltmHttpClassWaEnabled => { + ltmAlgLogProfileEndDataAction => { + '1' => 'disabled', + '2' => 'enabled', + '3' => 'backup-allocation-only', + }, + ltmAlgLogProfileInboundAction => { + '1' => 'disabled', + '2' => 'enabled', + }, + ltmVirtualServSourceAddressTranslationType => { + '0' => 'none', + '1' => 'snat', + '2' => 'lsn', + '3' => 'automap', + }, + ltmServerSslSessionMirroring => { '0' => 'false', '1' => 'true', }, - ltmSctpProfileSndPartial => { + ltmPptpProfileConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmPersistProfileMirror => { '0' => 'false', '1' => 'true', }, - ltmNodeAddrMonitorState => { + ltmFastL4ProfileExplicitFlowMigration => { + '0' => 'false', + '1' => 'true', + }, + ltmIsessionProfileCompression => { + '0' => 'disabled', + '1' => 'enabled', + }, + ltmClientSslGenericAlert => { + '0' => 'false', + '1' => 'true', + }, + ltmPoolMemberMonitorStatus => { '0' => 'unchecked', '1' => 'checking', '2' => 'inband', '3' => 'forced-up', '4' => 'up', + '18' => 'addr-down', '19' => 'down', '20' => 'forced-down', + '21' => 'maint', '22' => 'irule-down', '23' => 'inband-down', '24' => 'down-manual-resume', - '25' => 'disabled', }, - ltmSnatType => { + ltmServerSslGenericAlert => { + '0' => 'false', + '1' => 'true', + }, + ltmDnsProfileDnssecEnabled => { + '0' => 'false', + '1' => 'true', + }, + ltmPersistProfileAcrossPools => { + '0' => 'false', + '1' => 'true', + }, + ltmClientSslStrictResume => { + '0' => 'false', + '1' => 'true', + }, + ltmFastL4ProfileTcpStripSack => { + '0' => 'false', + '1' => 'true', + }, + ltmVirtualModuleScoreModuleType => { + '0' => 'asm', + '1' => 'sam', + '2' => 'wam', + }, + ltmPoolStatusAvailState => { '0' => 'none', - '1' => 'transaddr', - '2' => 'snatpool', - '3' => 'automap', + '1' => 'green', + '2' => 'yellow', + '3' => 'red', + '4' => 'blue', + '5' => 'grey', }, - ltmIsessionProfileMode => { + ltmSctpProfileSndPartial => { + '0' => 'false', + '1' => 'true', + }, + ltmHttpProfilePassthroughExcessClientHeaders => { + '0' => 'false', + '1' => 'true', + }, + ltmAlgLogProfileStartControlAction => { + '1' => 'disabled', + '2' => 'enabled', + '3' => 'backup-allocation-only', + }, + ltmPoolMemberNewSessionEnable => { + '1' => 'user-disabled', + '2' => 'user-enabled', + '3' => 'monitor-enabled', + '4' => 'monitor-disabled', + }, + ltmHttpProfilePassthroughPipeline => { + '0' => 'reject', + '1' => 'allow', + '2' => 'passthrough', + }, + ltmPoolMinUpMemberAction => { + '0' => 'unusedhaaction', + '1' => 'reboot', + '2' => 'restart', + '3' => 'failover', + '4' => 'goactive', + '5' => 'noaction', + '6' => 'restartall', + '7' => 'failoveraborttm', + '8' => 'gooffline', + '9' => 'goofflinerestart', + '10' => 'goofflineaborttm', + '11' => 'goofflinedownlinks', + '12' => 'goofflinedownlinksrestart', + }, + ltmHttpCompressionProfileVaryHeader => { + '0' => 'false', + '1' => 'true', + }, + ltmDnsCacheUseIpv6 => { + '0' => 'no', + '1' => 'yes', + }, + ltmServerSslStrictResume => { + '0' => 'false', + '1' => 'true', + }, + ltmDnsCacheIgnoreCd => { + '0' => 'no', + '1' => 'yes', + }, + ltmSpdyProfilePriorityHandling => { + '0' => 'strict', + '1' => 'fair', + }, + ltmLsnLogProfileStartInboundAction => { + '1' => 'disabled', + '2' => 'enabled', + '3' => 'backup-allocation-only', + }, + ltmTcpProfileLimitedTransmit => { + '0' => 'false', + '1' => 'true', + }, + ltmFastL4ProfileConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmAlgLogProfileEndDataElementsElements => { + '1' => 'destination', + }, + ltmDosApplicationHeavyUrlProtection => { + '0' => 'false', + '1' => 'true', + }, + ltmVirtualAddrServer => { + '0' => 'none', + '1' => 'any', + '2' => 'all', + }, + ltmXmlProfileMultipleQueryMatches => { + '0' => 'false', + '1' => 'true', + }, + ltmFastHttpProfileLayer7 => { + '0' => 'false', + '1' => 'true', + }, + ltmAlgLogProfileStartDataElementsElements => { + '1' => 'destination', + }, + ltmXmlProfileConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmNodeAddrSessionStatus => { + '1' => 'enabled', + '2' => 'addrdisabled', + '3' => 'servdisabled', + '4' => 'disabled', + '5' => 'forceddisabled', + }, + ltmNodeAddrStatusEnabledState => { + '0' => 'none', + '1' => 'enabled', + '2' => 'disabled', + '3' => 'disabledbyparent', + }, + ltmDosApplicationTriggerIrule => { + '0' => 'false', + '1' => 'true', + }, + ltmDosApplicationTpsBasedIpRateLimiting => { + '0' => 'false', + '1' => 'true', + }, + ltmTcpProfileSelectiveAcks => { + '0' => 'false', + '1' => 'true', + }, + ltmV6rdProfileConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmAuthProfileCredentialSource => { + '0' => 'httpbasicauth', + }, + ltmTcpProfileBandwidthDelay => { + '0' => 'false', + '1' => 'true', + }, + ltmDnsProfileDns64Mode => { + '0' => 'disable', + '1' => 'secondary', + '2' => 'immediate', + '3' => 'v4only', + }, + ltmHttpCompressionProfileAllowHttp10 => { + '0' => 'false', + '1' => 'true', + }, + ltmServerSslPeerCertMode => { + '0' => 'ignore', + '1' => 'require', + }, + ltmHttpProfileInsertXforwardedFor => { '0' => 'disabled', '1' => 'enabled', }, - ltmFastL4ProfileExplicitFlowMigration => { + ltmClientSslPeerCertMode => { + '0' => 'ignore', + '1' => 'require', + '2' => 'request', + '3' => 'auto', + }, + ltmStreamProfileConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmSctpProfileTcpShutdown => { + '0' => 'false', + '1' => 'true', + }, + ltmHttpClassWaEnabled => { '0' => 'false', '1' => 'true', }, @@ -3500,158 +3686,419 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'F5-BIGIP-LOCAL-MIB'} = '24' => 'down-manual-resume', '25' => 'disabled', }, - ltmLsnPoolInboundConnections => { - '0' => 'disabled', - '1' => 'automatic', - '2' => 'explicit', - }, - ltmIsessionProfilePortTransparency => { - '0' => 'disabled', - '1' => 'enabled', - }, - ltmFastL4ProfileRttFromClient => { - '0' => 'false', - '1' => 'true', - }, - ltmTcpProfileTimestamps => { - '0' => 'false', - '1' => 'true', - }, - ltmPoolMemberEnabledState => { - '0' => 'none', - '1' => 'enabled', - '2' => 'disabled', - '3' => 'disabledbyparent', - }, - ltmSpdyProfileInsertHeader => { - '0' => 'false', - '1' => 'true', - }, - ltmLsnLogProfileEndInboundAction => { - '1' => 'disabled', - '2' => 'enabled', - '3' => 'backup-allocation-only', - }, - ltmDnsProfileCacheEnabled => { - '0' => 'false', - '1' => 'true', - }, - ltmAlgLogProfileConfigSource => { + ltmDosProfileConfigSource => { '0' => 'usercfg', '1' => 'basecfg', }, + ltmHttpClassAsmEnabled => { + '0' => 'false', + '1' => 'true', + }, + ltmServerSslProxySsl => { + '0' => 'false', + '1' => 'true', + }, + ltmTcpProfileHighPerfTcpExt => { + '0' => 'false', + '1' => 'true', + }, + ltmClientSslProxySsl => { + '0' => 'false', + '1' => 'true', + }, + ltmHttpProfileRamcacheIgnoreClient => { + '0' => 'none', + '1' => 'maxage', + '2' => 'all', + }, + ltmAuthProfileType => { + '0' => 'ldap', + '1' => 'radius', + '2' => 'sslccldap', + '3' => 'sslocsp', + '4' => 'tacacs', + '5' => 'generic', + '6' => 'sslcrldp', + '7' => 'krbdelegate', + }, + ltmHttpProfileCompressAllowHttp10 => { + '0' => 'false', + '1' => 'true', + }, + ltmHttpCompressionProfileBrowserWorkarounds => { + '0' => 'false', + '1' => 'true', + }, + ltmRuleConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmFastL4ProfileTcpWscaleMode => { + '0' => 'preserve', + '1' => 'strip', + '2' => 'rewrite', + }, + ltmFastL4ProfilePvaAccelMode => { + '0' => 'full', + '1' => 'partial', + '2' => 'none', + }, + ltmDnsProfileDnsExpressEnabled => { + '0' => 'false', + '1' => 'true', + }, + ltmIsessionProfileCompressionNull => { + '0' => 'disabled', + '1' => 'enabled', + }, + ltmFastHttpProfileForceHttp10Response => { + '0' => 'false', + '1' => 'true', + }, + ltmServerSslDropUntrustCa => { + '0' => 'false', + '1' => 'true', + }, + ltmTcpProfileNagle => { + '0' => 'false', + '1' => 'true', + }, + ltmDosApplicationTpsBasedSiteClientSideDefense => { + '0' => 'false', + '1' => 'true', + }, + ltmPptpProfileLogServerIp => { + '0' => 'false', + '1' => 'true', + }, + ltmVirtualServTranslatePort => { + '0' => 'false', + '1' => 'true', + }, + ltmRtspProfileRealHttpPersistence => { + '0' => 'false', + '1' => 'true', + }, + ltmTcpProfileMptcp => { + '0' => 'false', + '1' => 'true', + }, + ltmLsnPoolRouteAdvertisement => { + '0' => 'false', + '1' => 'true', + }, + ltmClientSslModsslmethods => { + '0' => 'false', + '1' => 'true', + }, + ltmVirtualServEnabled => { + '0' => 'false', + '1' => 'true', + }, ltmPcpProfileThirdPartyOption => { '0' => 'false', '1' => 'true', }, - ltmVirtualAddrEnabledState => { + ltmHttpProfilePassthroughOversizeServerHeaders => { + '0' => 'false', + '1' => 'true', + }, + ltmUserStatProfileConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmFastHttpProfileResetOnTimeout => { + '0' => 'false', + '1' => 'true', + }, + ltmClientSslFwdpBypassEnabled => { + '0' => 'false', + '1' => 'true', + }, + ltmAttrMirrorState => { + '0' => 'disabled', + '1' => 'enabled', + }, + ltmVirtualServEnabledState => { '0' => 'none', '1' => 'enabled', '2' => 'disabled', '3' => 'disabledbyparent', }, - ltmTcpProfileEarlyRetransmit => { - '0' => 'false', - '1' => 'true', + ltmHttpCompressionProfilePreferredMethod => { + '0' => 'deflate', + '1' => 'gzip', }, ltmSctpProfileResetOnTimeout => { '0' => 'false', '1' => 'true', }, - ltmIsessionProfileDeduplication => { - '0' => 'disabled', - '1' => 'enabled', - }, - ltmVirtualAddrEnabled => { + ltmRtspProfileMulticastRedirect => { '0' => 'false', '1' => 'true', }, - ltmHttpProfileResponseChunking => { - '0' => 'preserve', - '1' => 'selective', - '2' => 'unchunk', - '3' => 'rechunk', - }, - ltmOcspStaplingParametersUseProxyServer => { - '0' => 'false', - '1' => 'true', - }, - ltmLsnLogProfileEndOutboundAction => { - '1' => 'disabled', - '2' => 'enabled', - '3' => 'backup-allocation-only', - }, - ltmTcpProfileMptcpFallback => { - '0' => 'reset', - '1' => 'retransmit', - '2' => 'activeaccept', - '3' => 'accept', - }, - ltmDosApplicationTpsBasedIpClientSideDefense => { - '0' => 'false', - '1' => 'true', - }, - ltmDnsCacheType => { - '0' => 'resolver', - '1' => 'validating-resolver', - '2' => 'transparent-resolver', - }, - ltmPersistProfileConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', - }, - ltmIiopProfilePersistRequestId => { - '0' => 'false', - '1' => 'true', - }, - ltmVirtualAddrAvailabilityState => { + ltmVirtualServAvailabilityState => { '0' => 'none', '1' => 'green', '2' => 'yellow', '3' => 'red', '4' => 'blue', }, - ltmClientSslModsslmethods => { - '0' => 'false', - '1' => 'true', + ltmVirtualServSrcport => { + '0' => 'srcportreserve', + '1' => 'srcportreservestrict', + '2' => 'srcportchange', }, - ltmClientSslPeerCertMode => { - '0' => 'ignore', - '1' => 'require', - '2' => 'request', - '3' => 'auto', + ltmVirtualServProfileType => { + '0' => 'auth', + '1' => 'http', + '2' => 'serverssl', + '3' => 'clientssl', + '4' => 'fastl4', + '5' => 'tcp', + '6' => 'udp', + '7' => 'ftp', + '8' => 'persist', + '9' => 'connpool', + '10' => 'stream', + '11' => 'xml', + '12' => 'fasthttp', + '13' => 'iiop', + '14' => 'rtsp', + '15' => 'user', + '16' => 'httpclass', + '17' => 'dns', + '18' => 'sctp', + '19' => 'instance', + '20' => 'sipp', + '21' => 'dos', + '62' => 'pptp', }, - ltmIsessionProfileCompression => { - '0' => 'disabled', - '1' => 'enabled', - }, - ltmDnsProfileConfigSource => { + ltmFtpProfileConfigSource => { '0' => 'usercfg', '1' => 'basecfg', }, - ltmVsStatusEnabledState => { + ltmVirtualServCmpEnabled => { + '0' => 'false', + '1' => 'true', + }, + ltmPersistProfileMapProxies => { + '0' => 'false', + '1' => 'true', + }, + ltmClientSslAuthenticateOnce => { + '0' => 'false', + '1' => 'true', + }, + ltmTcpProfileMptcpCsum => { + '0' => 'false', + '1' => 'true', + }, + ltmPcpProfileConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmLsnLogProfileQuotaExceededAction => { + '1' => 'disabled', + '2' => 'enabled', + }, + ltmSnatListedEnabledVlans => { + '0' => 'false', + '1' => 'true', + }, + ltmHttpProfileCompressKeepAcceptEncoding => { + '0' => 'false', + '1' => 'true', + }, + ltmFastL4ProfileLooseClose => { + '0' => 'false', + '1' => 'true', + }, + ltmNodeAddrMonitorState => { + '0' => 'unchecked', + '1' => 'checking', + '2' => 'inband', + '3' => 'forced-up', + '4' => 'up', + '19' => 'down', + '20' => 'forced-down', + '22' => 'irule-down', + '23' => 'inband-down', + '24' => 'down-manual-resume', + '25' => 'disabled', + }, + ltmHttpProfileRamcache => { + '0' => 'disable', + '1' => 'enable', + }, + ltmFastL4ProfileResetOnTimeout => { + '0' => 'false', + '1' => 'true', + }, + ltmTcpProfileProxyOptions => { + '0' => 'false', + '1' => 'true', + }, + ltmWebAccelerationProfileCacheInsertAgeHeader => { + '0' => 'disable', + '1' => 'enable', + }, + ltmHttpCompressionProfileKeepAcceptEncoding => { + '0' => 'false', + '1' => 'true', + }, + ltmNodeAddrEnabledState => { '0' => 'none', '1' => 'enabled', '2' => 'disabled', '3' => 'disabledbyparent', }, - ltmClientSslFwdpBypassEnabled => { + ltmClientSslProxySslPassthrough => { '0' => 'false', '1' => 'true', }, - ltmFwPolicyRuleStatRuleStatType => { - '1' => 'enforced', - '2' => 'staged', - '3' => 'active', - '4' => 'overlapper', - }, - ltmTcpProfileLimitedTransmit => { + ltmTcpProfileMptcpMakeafterbreak => { '0' => 'false', '1' => 'true', }, - ltmHttpProfileCompressPreferredMethod => { - '0' => 'deflate', - '1' => 'gzip', + ltmPoolLbMode => { + '0' => 'roundRobin', + '1' => 'ratioMember', + '2' => 'leastConnMember', + '3' => 'observedMember', + '4' => 'predictiveMember', + '5' => 'ratioNodeAddress', + '6' => 'leastConnNodeAddress', + '7' => 'fastestNodeAddress', + '8' => 'observedNodeAddress', + '9' => 'predictiveNodeAddress', + '10' => 'dynamicRatio', + '11' => 'fastestAppResponse', + '12' => 'leastSessions', + '13' => 'dynamicRatioMember', + '14' => 'l3Addr', + '15' => 'weightedLeastConnMember', + '16' => 'weightedLeastConnNodeAddr', + '17' => 'ratioSession', + }, + ltmDosApplicationHeavyUrlAutomaticDetection => { + '0' => 'false', + '1' => 'true', + }, + ltmNodeAddrNewSessionEnable => { + '1' => 'user-disabled', + '2' => 'user-enabled', + '3' => 'monitor-enabled', + '4' => 'monitor-disabled', + }, + ltmTcpProfileAbc => { + '0' => 'false', + '1' => 'true', + }, + ltmConnPoolProfileConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmNetworkAttackDataStatAttackType => { + '1' => 'ip-opt-frames', + '2' => 'ip-frag-flood', + '3' => 'too-many-ext-hdrs', + '4' => 'ext-hdr-too-large', + '5' => 'ip-low-ttl', + '6' => 'hop-cnt-low', + '7' => 'ipv6-ext-hdr-frames', + '8' => 'ipv6-frag-flood', + '9' => 'unk-tcp-opt-type', + '10' => 'opt-present-with-illegal-len', + '11' => 'tcp-opt-overruns-tcp-hdr', + '12' => 'tcp-syn-flood', + '13' => 'tcp-synack-flood', + '14' => 'tcp-rst-flood', + '15' => 'icmpv4-flood', + '16' => 'icmp-frag', + '17' => 'icmpv6-flood', + '18' => 'host-unreachable', + '19' => 'tidcmp', + '20' => 'udp-flood', + }, + ltmFastHttpProfileInsertXforwardedFor => { + '0' => 'disabled', + '1' => 'enabled', + }, + ltmPersistProfileMode => { + '0' => 'none', + '1' => 'srcaddr', + '2' => 'dstaddr', + '3' => 'cookie', + '4' => 'msrdp', + '5' => 'sslsid', + '6' => 'sip', + '7' => 'uie', + '8' => 'hash', + }, + ltmIsessionProfileCompressionLzo => { + '0' => 'disabled', + '1' => 'enabled', + }, + ltmAuthProfileMode => { + '0' => 'disabled', + '1' => 'enabled', + }, + ltmClientSslUncleanShutdown => { + '0' => 'false', + '1' => 'true', + }, + ltmHttpProfileCompressVaryHeader => { + '0' => 'false', + '1' => 'true', + }, + ltmDosApplicationLatencyBasedMode => { + '0' => 'off', + '1' => 'transparent', + '2' => 'blocking', + }, + ltmAlgLogProfileStartDataAction => { + '1' => 'disabled', + '2' => 'enabled', + '3' => 'backup-allocation-only', + }, + ltmVirtualAddrEnabled => { + '0' => 'false', + '1' => 'true', + }, + ltmTcpProfileSlowStart => { + '0' => 'false', + '1' => 'true', + }, + ltmHttpProfileRamcacheInsertAgeHeader => { + '0' => 'disable', + '1' => 'enable', + }, + ltmFastL4ProfileTcpTimestampMode => { + '0' => 'preserve', + '1' => 'strip', + '2' => 'rewrite', + }, + ltmLsnLogProfileStartOutboundAction => { + '1' => 'disabled', + '2' => 'enabled', + '3' => 'backup-allocation-only', + }, + ltmTcpProfileEarlyRetransmit => { + '0' => 'false', + '1' => 'true', + }, + ltmTcpProfileMptcpFastjoin => { + '0' => 'false', + '1' => 'true', + }, + ltmOcspStaplingParametersStrictRespCertCheck => { + '0' => 'false', + '1' => 'true', + }, + ltmTcpProfileMptcpCsumVerify => { + '0' => 'false', + '1' => 'true', }, ltmDosAttackDataStatAttackType => { '1' => 'ether-brdcst-pkt', @@ -3757,327 +4204,25 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'F5-BIGIP-LOCAL-MIB'} = '102' => 'flood', '103' => 'unk-ipopt-type', }, - ltmVirtualAddrRouteAdvertisement => { - '0' => 'false', - '1' => 'true', - }, - ltmAlgLogProfileEndControlAction => { - '1' => 'disabled', - '2' => 'enabled', - '3' => 'backup-allocation-only', - }, - ltmClientSslSessionMirroring => { - '0' => 'false', - '1' => 'true', - }, - ltmUdpProfileAllowNoPayload => { - '0' => 'false', - '1' => 'true', - }, - ltmSpdyProfileActivationMode => { - '0' => 'npn', - '1' => 'always', - }, - ltmPoolStatusAvailState => { - '0' => 'none', - '1' => 'green', - '2' => 'yellow', - '3' => 'red', - '4' => 'blue', - '5' => 'grey', - }, - ltmPoolMinUpMemberAction => { - '0' => 'unusedhaaction', - '1' => 'reboot', - '2' => 'restart', - '3' => 'failover', - '4' => 'goactive', - '5' => 'noaction', - '6' => 'restartall', - '7' => 'failoveraborttm', - '8' => 'gooffline', - '9' => 'goofflinerestart', - '10' => 'goofflineaborttm', - '11' => 'goofflinedownlinks', - '12' => 'goofflinedownlinksrestart', - }, - ltmDnsProfileDnsExpressEnabled => { - '0' => 'false', - '1' => 'true', - }, - ltmRtspProfileUnicastRedirect => { - '0' => 'false', - '1' => 'true', - }, - ltmHttpCompressionProfilePreferredMethod => { - '0' => 'deflate', - '1' => 'gzip', - }, - ltmFastL4ProfileTcpStripSack => { - '0' => 'false', - '1' => 'true', - }, - ltmHttpProfileTruncatedRedirects => { - '0' => 'disabled', - '1' => 'enabled', - }, - ltmDnsCacheUseIpv4 => { - '0' => 'no', - '1' => 'yes', - }, - ltmPoolActionOnServiceDown => { - '0' => 'none', - '1' => 'reset', - '2' => 'drop', - '3' => 'reselect', - }, - ltmTcpProfileMptcp => { - '0' => 'false', - '1' => 'true', - }, - ltmVirtualServSrcport => { - '0' => 'srcportreserve', - '1' => 'srcportreservestrict', - '2' => 'srcportchange', - }, - ltmFastHttpProfileLayer7 => { - '0' => 'false', - '1' => 'true', - }, - ltmAlgLogProfileInboundAction => { - '1' => 'disabled', - '2' => 'enabled', - }, - ltmHttpProfilePassthroughUnknownMethod => { - '0' => 'reject', - '1' => 'allow', - '2' => 'passthrough', - }, - ltmDosApplicationLatencyBasedIpClientSideDefense => { - '0' => 'false', - '1' => 'true', - }, - ltmWebAccelerationProfileCacheIgnoreClient => { - '0' => 'none', - '1' => 'maxage', - '2' => 'all', - }, - ltmVirtualServEnabled => { - '0' => 'false', - '1' => 'true', - }, - ltmNatArpEnabled => { - '0' => 'false', - '1' => 'true', - }, ltmVirtualServTranslateAddr => { '0' => 'false', '1' => 'true', }, - ltmUdpProfileConfigSource => { + ltmTcpProfileEcn => { + '0' => 'false', + '1' => 'true', + }, + ltmDnsHeaderFilterOpcodeExclusion => { + '0' => 'query', + '1' => 'iquery', + '2' => 'status', + '4' => 'notify', + '5' => 'update', + }, + ltmHttpClassConfigSource => { '0' => 'usercfg', '1' => 'basecfg', }, - ltmVirtualAddrArpEnabled => { - '0' => 'false', - '1' => 'true', - }, - ltmNatEnabled => { - '0' => 'false', - '1' => 'true', - }, - ltmFastL4ProfileConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', - }, - ltmNodeAddrAvailabilityState => { - '0' => 'none', - '1' => 'green', - '2' => 'yellow', - '3' => 'red', - '4' => 'blue', - }, - ltmDnsQueryFilterType => { - '0' => 'invalid', - '1' => 'a', - '2' => 'ns', - '3' => 'md', - '4' => 'mf', - '5' => 'cname', - '6' => 'soa', - '7' => 'mb', - '8' => 'mg', - '9' => 'mr', - '10' => 'null', - '11' => 'wks', - '12' => 'ptr', - '13' => 'hinfo', - '14' => 'minfo', - '15' => 'mx', - '16' => 'txt', - '17' => 'rp', - '18' => 'afsdb', - '19' => 'x25', - '20' => 'isdn', - '21' => 'rt', - '22' => 'nsap', - '23' => 'nsap-ptr', - '24' => 'sg', - '25' => 'key', - '26' => 'px', - '27' => 'gpos', - '28' => 'aaaa', - '29' => 'loc', - '30' => 'nxt', - '31' => 'eid', - '32' => 'nimloc', - '33' => 'srv', - '34' => 'atma', - '35' => 'naptr', - '36' => 'kx', - '37' => 'cert', - '38' => 'a6', - '39' => 'dname', - '40' => 'sink', - '41' => 'opt', - '249' => 'tkey', - '250' => 'tsig', - '251' => 'ixfr', - '252' => 'axfr', - '253' => 'mailb', - '254' => 'maila', - '255' => 'any', - '256' => 'zxfr', - '65536' => 'max', - }, - ltmVAddrStatusAvailState => { - '0' => 'none', - '1' => 'green', - '2' => 'yellow', - '3' => 'red', - '4' => 'blue', - '5' => 'gray', - }, - ltmDnsCacheUseUdp => { - '0' => 'no', - '1' => 'yes', - }, - ltmVirtualAddrSfFlags => { - '0' => 'disabled', - '1' => 'enabled', - }, - ltmPersistProfileMapProxies => { - '0' => 'false', - '1' => 'true', - }, - ltmDosApplicationHeavyUrlProtection => { - '0' => 'false', - '1' => 'true', - }, - ltmHttpProfilePassthroughOversizeServerHeaders => { - '0' => 'false', - '1' => 'true', - }, - ltmVirtualServSourceAddressTranslationType => { - '0' => 'none', - '1' => 'snat', - '2' => 'lsn', - '3' => 'automap', - }, - ltmDnsProfileFastDnsEnabled => { - '0' => 'false', - '1' => 'true', - }, - ltmNodeAddrEnabledState => { - '0' => 'none', - '1' => 'enabled', - '2' => 'disabled', - '3' => 'disabledbyparent', - }, - ltmUdpProfileDatagramLb => { - '0' => 'false', - '1' => 'true', - }, - ltmHttpProfilePassthroughPipeline => { - '0' => 'reject', - '1' => 'allow', - '2' => 'passthrough', - }, - ltmAuthProfileCredentialSource => { - '0' => 'httpbasicauth', - }, - ltmAlgLogProfileEndControlElementsElements => { - '1' => 'destination', - }, - ltmServerSslMode => { - '0' => 'disabled', - '1' => 'enabled', - }, - ltmDnsProfileSecurityEnabled => { - '0' => 'false', - '1' => 'true', - }, - ltmDnsProfileProcessRd => { - '0' => 'false', - '1' => 'true', - }, - ltmServerSslDropExpCert => { - '0' => 'false', - '1' => 'true', - }, - ltmSctpProfileConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', - }, - ltmPoolAvailabilityState => { - '0' => 'none', - '1' => 'green', - '2' => 'yellow', - '3' => 'red', - '4' => 'blue', - }, - ltmV6rdProfileConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', - }, - ltmFastL4ProfileTimeoutRecovery => { - '0' => 'disconnect', - '1' => 'fallback', - }, - ltmHttpProfileInsertXforwardedFor => { - '0' => 'disabled', - '1' => 'enabled', - }, - ltmDosApplicationTpsBasedUrlClientSideDefense => { - '0' => 'false', - '1' => 'true', - }, - ltmHttpProfileCompressCpusaver => { - '0' => 'false', - '1' => 'true', - }, - ltmSipProfileInsertRecordRoute => { - '0' => 'false', - '1' => 'true', - }, - ltmPoolMinUpMembersEnable => { - '0' => 'false', - '1' => 'true', - }, - ltmAlgLogProfileStartControlAction => { - '1' => 'disabled', - '2' => 'enabled', - '3' => 'backup-allocation-only', - }, - ltmLsnPoolHairpinMode => { - '0' => 'disabled', - '1' => 'enabled', - }, - ltmFastHttpProfileUncleanShutdown => { - '0' => 'disable', - '1' => 'enable', - '2' => 'fast', - }, ltmPoolMemberSessionStatus => { '1' => 'enabled', '2' => 'addrdisabled', @@ -4085,23 +4230,73 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'F5-BIGIP-LOCAL-MIB'} = '4' => 'disabled', '5' => 'forceddisabled', }, - ltmFastL4ProfileLooseClose => { + ltmFastHttpProfileConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmLsnLogProfileStartOutboundElementsElements => { + '1' => 'destination', + }, + ltmLsnPoolEgressInterfacesEnabled => { '0' => 'false', '1' => 'true', }, - ltmTcpProfileMptcpCsumVerify => { + ltmPoolMinUpMembersEnable => { '0' => 'false', '1' => 'true', }, - ltmTcpProfileTailLossProbe => { + ltmLsnLogProfileConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmSnatSfFlags => { + '0' => 'disabled', + '1' => 'enabled', + }, + ltmTransAddrEnabled => { '0' => 'false', '1' => 'true', }, - ltmTcpProfileMptcpCsum => { + ltmPoolEnabledState => { + '0' => 'none', + '1' => 'enabled', + '2' => 'disabled', + '3' => 'disabledbyparent', + }, + ltmHttpProfileCompressCpusaver => { '0' => 'false', '1' => 'true', }, - ltmTcpProfileProxyMss => { + ltmIsessionProfileCompressionBzip2 => { + '0' => 'disabled', + '1' => 'enabled', + }, + ltmHttpProfileResponseChunking => { + '0' => 'preserve', + '1' => 'selective', + '2' => 'unchunk', + '3' => 'rechunk', + }, + ltmIsessionProfileConnectionReuse => { + '0' => 'disabled', + '1' => 'enabled', + }, + ltmPoolActionOnServiceDown => { + '0' => 'none', + '1' => 'reset', + '2' => 'drop', + '3' => 'reselect', + }, + ltmDosApplicationTpsBasedIpClientSideDefense => { + '0' => 'false', + '1' => 'true', + }, + ltmVirtualServClonePoolType => { + '0' => 'unspec', + '1' => 'clientside', + '2' => 'serverside', + }, + ltmSctpProfileRcvOrdered => { '0' => 'false', '1' => 'true', }, @@ -4109,105 +4304,7 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'F5-BIGIP-LOCAL-MIB'} = '0' => 'false', '1' => 'true', }, - ltmHttpProfileCompressAllowHttp10 => { - '0' => 'false', - '1' => 'true', - }, - ltmTcpProfileResetOnTimeout => { - '0' => 'false', - '1' => 'true', - }, - ltmTcpProfileHighPerfTcpExt => { - '0' => 'false', - '1' => 'true', - }, - ltmFastL4ProfileResetOnTimeout => { - '0' => 'false', - '1' => 'true', - }, - ltmRtspProfileSessionReconnect => { - '0' => 'false', - '1' => 'true', - }, - ltmClientSslFwdpEnabled => { - '0' => 'false', - '1' => 'true', - }, - ltmNodeAddrSessionStatus => { - '1' => 'enabled', - '2' => 'addrdisabled', - '3' => 'servdisabled', - '4' => 'disabled', - '5' => 'forceddisabled', - }, - ltmSpdyProfilePriorityHandling => { - '0' => 'strict', - '1' => 'fair', - }, - ltmServerSslAuthenticateOnce => { - '0' => 'false', - '1' => 'true', - }, - ltmNetworkAttackDataStatAttackType => { - '1' => 'ip-opt-frames', - '2' => 'ip-frag-flood', - '3' => 'too-many-ext-hdrs', - '4' => 'ext-hdr-too-large', - '5' => 'ip-low-ttl', - '6' => 'hop-cnt-low', - '7' => 'ipv6-ext-hdr-frames', - '8' => 'ipv6-frag-flood', - '9' => 'unk-tcp-opt-type', - '10' => 'opt-present-with-illegal-len', - '11' => 'tcp-opt-overruns-tcp-hdr', - '12' => 'tcp-syn-flood', - '13' => 'tcp-synack-flood', - '14' => 'tcp-rst-flood', - '15' => 'icmpv4-flood', - '16' => 'icmp-frag', - '17' => 'icmpv6-flood', - '18' => 'host-unreachable', - '19' => 'tidcmp', - '20' => 'udp-flood', - }, - ltmSpdyProfileConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', - }, - ltmServerSslDropUntrustCa => { - '0' => 'false', - '1' => 'true', - }, - ltmHttpProfileCompressKeepAcceptEncoding => { - '0' => 'false', - '1' => 'true', - }, - ltmDnsProfileDnsLastAction => { - '0' => 'allow', - '1' => 'drop', - '2' => 'reject', - '3' => 'hint', - '4' => 'noerror', - }, - ltmSpdyProfileProtocolVersionsProtocolVersions => { - '1' => 'spdy2', - '2' => 'spdy3', - '3' => 'http11', - }, - ltmTcpProfileVerifiedAccept => { - '0' => 'false', - '1' => 'true', - }, - ltmClientSslStrictResume => { - '0' => 'false', - '1' => 'true', - }, - ltmAlgLogProfileStartDataAction => { - '1' => 'disabled', - '2' => 'enabled', - '3' => 'backup-allocation-only', - }, - ltmSipProfileFirewallEnabled => { + ltmSpdyProfileInsertHeader => { '0' => 'false', '1' => 'true', }, @@ -4219,90 +4316,86 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'F5-BIGIP-LOCAL-MIB'} = '4' => 'blue', '5' => 'gray', }, - ltmVirtualServAvailabilityState => { - '0' => 'none', - '1' => 'green', - '2' => 'yellow', - '3' => 'red', - '4' => 'blue', - }, - ltmLsnPoolEgressInterfacesEnabled => { + ltmServerSslModsslmethods => { '0' => 'false', '1' => 'true', }, - ltmPersistProfileAcrossPools => { + ltmServerSslSessionTicket => { '0' => 'false', '1' => 'true', }, - ltmDnsProfileDnssecEnabled => { + ltmClientSslAllowNonssl => { '0' => 'false', '1' => 'true', }, - ltmVirtualServEnabledState => { - '0' => 'none', - '1' => 'enabled', - '2' => 'disabled', - '3' => 'disabledbyparent', - }, - ltmTcpProfileConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', - }, - ltmNodeAddrStatusEnabledState => { - '0' => 'none', - '1' => 'enabled', - '2' => 'disabled', - '3' => 'disabledbyparent', - }, - ltmLsnLogProfileQuotaExceededAction => { - '1' => 'disabled', - '2' => 'enabled', - }, - ltmFastL4ProfileLooseInitiation => { + ltmTcpProfileTailLossProbe => { '0' => 'false', '1' => 'true', }, - ltmRtspProfileConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', - }, - ltmPersistProfileMode => { - '0' => 'none', - '1' => 'srcaddr', - '2' => 'dstaddr', - '3' => 'cookie', - '4' => 'msrdp', - '5' => 'sslsid', - '6' => 'sip', - '7' => 'uie', - '8' => 'hash', - }, - ltmIsessionProfileCompressionLzo => { + ltmIsessionProfileMode => { '0' => 'disabled', '1' => 'enabled', }, - ltmServerSslSessionMirroring => { + ltmPoolDisallowSnat => { + '0' => 'allowed', + '1' => 'disallowed', + }, + ltmTcpProfileRatePace => { '0' => 'false', '1' => 'true', }, - ltmClientSslProxySslPassthrough => { + ltmDosApplicationLatencyBasedUrlRateLimiting => { '0' => 'false', '1' => 'true', }, - ltmTcpProfileSlowStart => { + ltmVirtualServPersistUseDefault => { '0' => 'false', '1' => 'true', }, - ltmPoolStatusEnabledState => { - '0' => 'none', - '1' => 'enabled', - '2' => 'disabled', - '3' => 'disabledbyparent', + ltmTcpProfileCmetricsCache => { + '0' => 'false', + '1' => 'true', }, - ltmFastL4ProfileTcpWscaleMode => { - '0' => 'preserve', - '1' => 'strip', - '2' => 'rewrite', + ltmServerSslFwdpEnabled => { + '0' => 'false', + '1' => 'true', + }, + ltmHttpProfileCompressBrowserWorkarounds => { + '0' => 'false', + '1' => 'true', + }, + ltmLsnLogProfileErrorsAction => { + '1' => 'disabled', + '2' => 'enabled', + }, + ltmVirtualAddrArpEnabled => { + '0' => 'false', + '1' => 'true', + }, + ltmClientSslFwdpEnabled => { + '0' => 'false', + '1' => 'true', + }, + ltmDnsProfileUseLocalBind => { + '0' => 'false', + '1' => 'true', + }, + ltmUdpProfileConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmDosApplicationTpsBasedMode => { + '0' => 'off', + '1' => 'transparent', + '2' => 'blocking', + }, + ltmDnsCacheAnswerDefaultZones => { + '0' => 'no', + '1' => 'yes', + }, + ltmFtpProfileTranslateExtended => { + '0' => 'false', + '1' => 'true', }, ltmPoolMbrStatusAvailState => { '0' => 'none', @@ -4312,142 +4405,99 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'F5-BIGIP-LOCAL-MIB'} = '4' => 'blue', '5' => 'gray', }, - ltmFastHttpProfileHttp11CloseWorkarounds => { - '0' => 'false', - '1' => 'true', - }, - ltmHttpCompressionProfileKeepAcceptEncoding => { - '0' => 'false', - '1' => 'true', - }, - ltmFastL4ProfileLateBinding => { - '0' => 'false', - '1' => 'true', - }, - ltmHttpProfileRamcacheIgnoreClient => { + ltmNodeAddrAvailabilityState => { '0' => 'none', - '1' => 'maxage', - '2' => 'all', + '1' => 'green', + '2' => 'yellow', + '3' => 'red', + '4' => 'blue', }, - ltmPersistProfileMsrdpNoSessionDir => { + ltmDnsProfileConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmAuthProfileConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmIiopProfilePersistRequestId => { '0' => 'false', '1' => 'true', }, - ltmServerSslFwdpBypassEnabled => { + ltmLsnPoolInboundConnections => { + '0' => 'disabled', + '1' => 'automatic', + '2' => 'explicit', + }, + ltmTcpProfileTimestamps => { '0' => 'false', '1' => 'true', }, - ltmIiopProfileAbortOnTimeout => { - '0' => 'false', - '1' => 'true', - }, - ltmVirtualServProfileType => { - '0' => 'auth', - '1' => 'http', - '2' => 'serverssl', - '3' => 'clientssl', - '4' => 'fastl4', - '5' => 'tcp', - '6' => 'udp', - '7' => 'ftp', - '8' => 'persist', - '9' => 'connpool', - '10' => 'stream', - '11' => 'xml', - '12' => 'fasthttp', - '13' => 'iiop', - '14' => 'rtsp', - '15' => 'user', - '16' => 'httpclass', - '17' => 'dns', - '18' => 'sctp', - '19' => 'instance', - '20' => 'sipp', - '21' => 'dos', - '62' => 'pptp', - }, - ltmHttpCompressionProfileBrowserWorkarounds => { - '0' => 'false', - '1' => 'true', - }, - ltmTcpProfileProxyOptions => { - '0' => 'false', - '1' => 'true', - }, - ltmTcpProfileDelayedAcks => { - '0' => 'false', - '1' => 'true', - }, - ltmSipProfileTerminateBye => { - '0' => 'false', - '1' => 'true', - }, - ltmLsnLogProfileErrorsAction => { - '1' => 'disabled', - '2' => 'enabled', - }, - ltmPersistProfileAcrossServices => { - '0' => 'false', - '1' => 'true', - }, - ltmLsnPoolMode => { - '0' => 'napt', - '1' => 'pba', - '2' => 'deterministic', - }, - ltmIsessionProfileCompressionNull => { + ltmHttpProfilePipelining => { '0' => 'disabled', '1' => 'enabled', }, - ltmTcpProfileDelayWindowControl => { + ltmPersistProfileAcrossVirtuals => { '0' => 'false', '1' => 'true', }, - ltmHttpClassAsmEnabled => { + ltmFastL4ProfileTcpGenerateIsn => { '0' => 'false', '1' => 'true', }, - ltmWebAccelerationProfileCacheInsertAgeHeader => { + ltmHttpCompressionProfileSelective => { + '0' => 'false', + '1' => 'true', + }, + ltmIsessionProfileCompressionAdaptive => { + '0' => 'disabled', + '1' => 'enabled', + }, + ltmTcpProfileDeferredAccept => { + '0' => 'false', + '1' => 'true', + }, + ltmVirtualServListedEnabledVlans => { + '0' => 'false', + '1' => 'true', + }, + ltmHttpProfileCompressMode => { '0' => 'disable', '1' => 'enable', + '2' => 'selective', }, - ltmAuthProfileType => { - '0' => 'ldap', - '1' => 'radius', - '2' => 'sslccldap', - '3' => 'sslocsp', - '4' => 'tacacs', - '5' => 'generic', - '6' => 'sslcrldp', - '7' => 'krbdelegate', - }, - ltmServerSslStrictResume => { + ltmDnsProfileGtmEnabled => { '0' => 'false', '1' => 'true', }, - ltmDnsHeaderFilterOpcodeExclusion => { - '0' => 'query', - '1' => 'iquery', - '2' => 'status', - '4' => 'notify', - '5' => 'update', + ltmDnsCacheUseUdp => { + '0' => 'no', + '1' => 'yes', }, - ltmDnsProfileUseLocalBind => { - '0' => 'false', - '1' => 'true', + ltmSpdyProfileProtocolVersionsProtocolVersions => { + '1' => 'spdy2', + '2' => 'spdy3', + '3' => 'http11', }, - ltmDosApplicationLatencyBasedSiteClientSideDefense => { - '0' => 'false', - '1' => 'true', - }, - ltmNatListedEnabledVlans => { - '0' => 'false', - '1' => 'true', - }, - ltmVirtualAddrServer => { + ltmPoolStatusEnabledState => { '0' => 'none', - '1' => 'any', - '2' => 'all', + '1' => 'enabled', + '2' => 'disabled', + '3' => 'disabledbyparent', + }, + ltmAttrSnatAnyIpProtocol => { + '0' => 'disabled', + '1' => 'enabled', + }, + ltmFwRuleStatRuleStatType => { + '1' => 'enforced', + '2' => 'staged', + '3' => 'active', + '4' => 'overlapper', + }, + ltmDnsProfileCacheEnabled => { + '0' => 'false', + '1' => 'true', }, ltmPersistProfileCookieMethod => { '0' => 'unspecified', @@ -4456,133 +4506,112 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'F5-BIGIP-LOCAL-MIB'} = '3' => 'passive', '4' => 'hash', }, - ltmAlgLogProfileStartDataElementsElements => { - '1' => 'destination', - }, - ltmFastHttpProfileInsertXforwardedFor => { - '0' => 'disabled', - '1' => 'enabled', - }, - ltmPoolQueueOnConnectionLimit => { - '0' => 'allowed', - '1' => 'disallowed', - }, - ltmTcpProfileTimeWaitRecycle => { + ltmClientSslSessionTicket => { '0' => 'false', '1' => 'true', }, - ltmSipProfileInsertVia => { - '0' => 'false', - '1' => 'true', - }, - ltmAlgLogProfileEndDataAction => { - '1' => 'disabled', - '2' => 'enabled', - '3' => 'backup-allocation-only', - }, - ltmDnsCacheUseTcp => { - '0' => 'no', - '1' => 'yes', - }, - ltmIiopProfilePersistObjectKey => { - '0' => 'false', - '1' => 'true', - }, - ltmRuleConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', - }, - ltmWebAccelerationProfileConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', - }, - ltmOcspStaplingParametersStrictRespCertCheck => { - '0' => 'false', - '1' => 'true', - }, - ltmLsnPoolRouteAdvertisement => { - '0' => 'false', - '1' => 'true', - }, - ltmTcpProfileBandwidthDelay => { - '0' => 'false', - '1' => 'true', - }, - ltmVirtualServTranslatePort => { - '0' => 'false', - '1' => 'true', - }, - ltmFwRuleStatRuleStatType => { - '1' => 'enforced', - '2' => 'staged', - '3' => 'active', - '4' => 'overlapper', - }, - ltmTcpProfileRatePace => { - '0' => 'false', - '1' => 'true', - }, - ltmServerSslSessionTicket => { - '0' => 'false', - '1' => 'true', - }, - ltmDnsProfileDns64Mode => { + ltmDnsProfileDns64AdditionalRewrite => { '0' => 'disable', - '1' => 'secondary', - '2' => 'immediate', - '3' => 'v4only', + '1' => 'v6only', + '2' => 'v4only', + '3' => 'any', }, - ltmClientSslUncleanShutdown => { + ltmPoolAvailabilityState => { + '0' => 'none', + '1' => 'green', + '2' => 'yellow', + '3' => 'red', + '4' => 'blue', + }, + ltmOcspStaplingParametersUseProxyServer => { '0' => 'false', '1' => 'true', }, - ltmSnatSfFlags => { + ltmWebAccelerationProfileCacheIgnoreClient => { + '0' => 'none', + '1' => 'maxage', + '2' => 'all', + }, + ltmClientSslMode => { '0' => 'disabled', '1' => 'enabled', }, - ltmRateFilterDirection => { - '0' => 'any', - '1' => 'client', - '2' => 'server', + ltmSnatType => { + '0' => 'none', + '1' => 'transaddr', + '2' => 'snatpool', + '3' => 'automap', + }, + ltmServerSslFwdpBypassEnabled => { + '0' => 'false', + '1' => 'true', + }, + ltmHttpProfileOneConnect => { + '0' => 'false', + '1' => 'true', + }, + ltmServerSslMode => { + '0' => 'disabled', + '1' => 'enabled', + }, + ltmVirtualAddrAvailabilityState => { + '0' => 'none', + '1' => 'green', + '2' => 'yellow', + '3' => 'red', + '4' => 'blue', + }, + ltmHttpCompressionProfileConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmFastL4ProfileRttFromClient => { + '0' => 'false', + '1' => 'true', + }, + ltmSctpProfileConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', }, ltmAlgLogProfileStartControlElementsElements => { '1' => 'destination', }, - ltmFtpProfileConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', + ltmDosApplicationTpsBasedSiteRateLimiting => { + '0' => 'false', + '1' => 'true', }, - ltmHttpProfilePipelining => { - '0' => 'disabled', - '1' => 'enabled', - }, - ltmAttrSnatAnyIpProtocol => { - '0' => 'disabled', - '1' => 'enabled', - }, - ltmPoolEnabledState => { + ltmPoolMemberEnabledState => { '0' => 'none', '1' => 'enabled', '2' => 'disabled', '3' => 'disabledbyparent', }, - ltmPptpProfileLogServerIp => { + ltmIsessionProfileCompressionDeflate => { + '0' => 'disabled', + '1' => 'enabled', + }, + ltmXmlProfileAbortOnError => { '0' => 'false', '1' => 'true', }, - ltmHttpProfileCompressBrowserWorkarounds => { + ltmSipProfileFirewallEnabled => { '0' => 'false', '1' => 'true', }, - ltmHttpCompressionProfileAllowHttp10 => { + ltmLsnPoolMode => { + '0' => 'napt', + '1' => 'pba', + '2' => 'deterministic', + }, + ltmDosApplicationTpsBasedUrlClientSideDefense => { '0' => 'false', '1' => 'true', }, - ltmHttpProfileCompressVaryHeader => { + ltmIiopProfileAbortOnTimeout => { '0' => 'false', '1' => 'true', }, - ltmRtspProfileRealHttpPersistence => { + ltmFastL4ProfileLooseInitiation => { '0' => 'false', '1' => 'true', }, @@ -4592,26 +4621,39 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'F5-BIGIP-LOCAL-MIB'} = '2' => 'disabled', '3' => 'disabledbyparent', }, - ltmDosApplicationTriggerIrule => { - '0' => 'false', - '1' => 'true', - }, - ltmTcpProfileSelectiveAcks => { - '0' => 'false', - '1' => 'true', - }, - ltmAttrPersistDestAddrLimitMode => { - '0' => 'timeout', - '1' => 'maxcount', - }, - ltmDnsCacheIgnoreCd => { + ltmDnsCachePrefetchKey => { '0' => 'no', '1' => 'yes', }, - ltmRtspProfileMulticastRedirect => { + ltmFastHttpProfileHttp11CloseWorkarounds => { '0' => 'false', '1' => 'true', }, + ltmVirtualAddrSfFlags => { + '0' => 'disabled', + '1' => 'enabled', + }, + ltmUdpProfileDatagramLb => { + '0' => 'false', + '1' => 'true', + }, + ltmPoolMemberAvailabilityState => { + '0' => 'none', + '1' => 'green', + '2' => 'yellow', + '3' => 'red', + '4' => 'blue', + }, + ltmDosApplicationLatencyBasedUrlClientSideDefense => { + '0' => 'false', + '1' => 'true', + }, + ltmTcpProfileMptcpFallback => { + '0' => 'reset', + '1' => 'retransmit', + '2' => 'activeaccept', + '3' => 'accept', + }, ltmNodeAddrStatusAvailState => { '0' => 'none', '1' => 'green', @@ -4620,72 +4662,112 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'F5-BIGIP-LOCAL-MIB'} = '4' => 'blue', '5' => 'gray', }, - ltmDnsProfileGtmEnabled => { + ltmTcpProfileDelayedAcks => { '0' => 'false', '1' => 'true', }, + ltmRtspProfileSessionReconnect => { + '0' => 'false', + '1' => 'true', + }, + ltmFastL4ProfileHardSyncookie => { + '0' => 'false', + '1' => 'true', + }, + ltmClientSslConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmSpdyProfileConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmHttpProfileCompressPreferredMethod => { + '0' => 'deflate', + '1' => 'gzip', + }, + ltmDnsProfileSecurityEnabled => { + '0' => 'false', + '1' => 'true', + }, + ltmDosApplicationLatencyBasedSiteClientSideDefense => { + '0' => 'false', + '1' => 'true', + }, + ltmSpdyProfileActivationMode => { + '0' => 'npn', + '1' => 'always', + }, + ltmSipProfileInsertRecordRoute => { + '0' => 'false', + '1' => 'true', + }, + ltmServerSslConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmPoolDisallowNat => { + '0' => 'allowed', + '1' => 'disallowed', + }, + ltmDosApplicationTpsBasedUrlRateLimiting => { + '0' => 'false', + '1' => 'true', + }, + ltmDnsProfileProcessRd => { + '0' => 'false', + '1' => 'true', + }, + ltmAttrPersistDestAddrLimitMode => { + '0' => 'timeout', + '1' => 'maxcount', + }, + ltmDosApplicationLatencyBasedIpRateLimiting => { + '0' => 'false', + '1' => 'true', + }, + ltmPersistProfileConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmFastL4ProfileSoftSyncookie => { + '0' => 'false', + '1' => 'true', + }, + ltmDnsCacheUseTcp => { + '0' => 'no', + '1' => 'yes', + }, ltmDnsSecurityQueryTypeInclusion => { '0' => 'no', '1' => 'yes', }, - ltmDosApplicationLatencyBasedMode => { - '0' => 'off', - '1' => 'transparent', - '2' => 'blocking', - }, - ltmDosApplicationTpsBasedIpRateLimiting => { - '0' => 'false', - '1' => 'true', - }, - ltmHttpClassConfigSource => { + ltmHttpProfileConfigSource => { '0' => 'usercfg', '1' => 'basecfg', }, - ltmDosApplicationTpsBasedSiteClientSideDefense => { + ltmLsnPoolPersistenceMode => { + '0' => 'none', + '1' => 'address', + '2' => 'addressPort', + }, + ltmSipProfileSecureVia => { '0' => 'false', '1' => 'true', }, - ltmVirtualServCmpEnabled => { + ltmFastL4ProfileTimeoutRecovery => { + '0' => 'disconnect', + '1' => 'fallback', + }, + ltmTcpProfileProxyMss => { '0' => 'false', '1' => 'true', }, - ltmFastL4ProfileIpFragReass => { - '0' => 'false', - '1' => 'true', - }, - ltmIsessionProfileCompressionBzip2 => { - '0' => 'disabled', - '1' => 'enabled', - }, - ltmPoolLbMode => { - '0' => 'roundRobin', - '1' => 'ratioMember', - '2' => 'leastConnMember', - '3' => 'observedMember', - '4' => 'predictiveMember', - '5' => 'ratioNodeAddress', - '6' => 'leastConnNodeAddress', - '7' => 'fastestNodeAddress', - '8' => 'observedNodeAddress', - '9' => 'predictiveNodeAddress', - '10' => 'dynamicRatio', - '11' => 'fastestAppResponse', - '12' => 'leastSessions', - '13' => 'dynamicRatioMember', - '14' => 'l3Addr', - '15' => 'weightedLeastConnMember', - '16' => 'weightedLeastConnNodeAddr', - '17' => 'ratioSession', - }, - ltmDnsCacheRandomizeQueryNameCase => { + ltmDnsCacheUseIpv4 => { '0' => 'no', '1' => 'yes', }, - ltmConnPoolProfileConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', - }, - ltmFastHttpProfileResetOnTimeout => { + ltmDnsProfileLoggingEnabled => { '0' => 'false', '1' => 'true', }, @@ -4693,170 +4775,70 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'F5-BIGIP-LOCAL-MIB'} = '0' => 'false', '1' => 'true', }, - ltmVirtualServPersistUseDefault => { - '0' => 'false', - '1' => 'true', - }, - ltmHttpCompressionProfileCpusaver => { - '0' => 'false', - '1' => 'true', - }, - ltmSipProfileSecureVia => { - '0' => 'false', - '1' => 'true', - }, - ltmFastHttpProfileConfigSource => { + ltmWebAccelerationProfileConfigSource => { '0' => 'usercfg', '1' => 'basecfg', }, - ltmClientSslMode => { + ltmTcpProfileDsack => { + '0' => 'false', + '1' => 'true', + }, + ltmTransAddrArpEnabled => { + '0' => 'false', + '1' => 'true', + }, + ltmSipProfileConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmNatListedEnabledVlans => { + '0' => 'false', + '1' => 'true', + }, + ltmIsessionProfilePortTransparency => { '0' => 'disabled', '1' => 'enabled', }, - ltmIsessionProfileTargetVirtual => { + ltmClientSslSessionMirroring => { + '0' => 'false', + '1' => 'true', + }, + ltmRateFilterQtype => { '0' => 'none', - '1' => 'hostmatchnoisession', - '2' => 'hostmatchall', - '3' => 'matchall', + '1' => 'sfq', + '2' => 'pfifo', }, - ltmClientSslSessionTicket => { - '0' => 'false', - '1' => 'true', + ltmHttpProfileRedirectRewrite => { + '0' => 'none', + '1' => 'all', + '2' => 'matching', + '3' => 'nodes', }, - ltmPoolDisallowNat => { - '0' => 'allowed', - '1' => 'disallowed', - }, - ltmFastL4ProfileTcpTimestampMode => { - '0' => 'preserve', - '1' => 'strip', - '2' => 'rewrite', - }, - ltmHttpProfileCompressMode => { - '0' => 'disable', - '1' => 'enable', - '2' => 'selective', - }, - ltmTcpProfileMptcpNojoindssack => { - '0' => 'false', - '1' => 'true', - }, - ltmServerSslPeerCertMode => { - '0' => 'ignore', - '1' => 'require', - }, - ltmFastHttpProfileForceHttp10Response => { - '0' => 'false', - '1' => 'true', - }, - ltmClientSslFwdpLookupByIpaddrPort => { - '0' => 'false', - '1' => 'true', - }, - ltmLsnPoolIcmpEcho => { - '0' => 'false', - '1' => 'true', - }, - ltmDosApplicationTpsBasedSiteRateLimiting => { - '0' => 'false', - '1' => 'true', - }, - ltmTcpProfileCmetricsCache => { - '0' => 'false', - '1' => 'true', - }, - ltmVirtualServClonePoolType => { - '0' => 'unspec', - '1' => 'clientside', - '2' => 'serverside', - }, - ltmXmlProfileConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', - }, - ltmSctpProfileTcpShutdown => { - '0' => 'false', - '1' => 'true', - }, - ltmTcpProfileMptcpMakeafterbreak => { - '0' => 'false', - '1' => 'true', - }, - ltmOcspStaplingParametersSignHash => { - '0' => 'sha1', - '1' => 'sha256', - }, - ltmVirtualServActualPvaAccel => { - '0' => 'full', - '1' => 'partial', - '2' => 'none', - }, - ltmTcpProfileNagle => { - '0' => 'false', - '1' => 'true', - }, - ltmDosApplicationTpsBasedMode => { - '0' => 'off', - '1' => 'transparent', - '2' => 'blocking', - }, - ltmPersistProfileAcrossVirtuals => { - '0' => 'false', - '1' => 'true', - }, - ltmClientSslProxySsl => { - '0' => 'false', - '1' => 'true', - }, - ltmVirtualAddrIsFloat => { - '0' => 'false', - '1' => 'true', - }, - ltmTcpProfileAckOnPush => { - '0' => 'false', - '1' => 'true', - }, - ltmHttpProfileConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', - }, - ltmServerSslProxySslPassthrough => { - '0' => 'false', - '1' => 'true', - }, - ltmTcpProfileCongestionCtrl => { - '0' => 'reno', - '1' => 'newreno', - '2' => 'scalable', - '3' => 'highspeed', - '4' => 'none', - '5' => 'vegas', - '6' => 'illinois', - '7' => 'woodside', - '8' => 'chd', - '9' => 'cdg', - '10' => 'cubic', - '11' => 'westwood', - }, - ltmDnsCacheUseIpv6 => { + ltmDnsCacheRandomizeQueryNameCase => { '0' => 'no', '1' => 'yes', }, - ltmHttpProfileRamcache => { - '0' => 'disable', - '1' => 'enable', + ltmVirtualServProfileContext => { + '0' => 'all', + '1' => 'client', + '2' => 'server', }, - ltmPoolMemberNewSessionEnable => { - '1' => 'user-disabled', - '2' => 'user-enabled', - '3' => 'monitor-enabled', - '4' => 'monitor-disabled', + ltmVirtualServType => { + '0' => 'poolbased', + '1' => 'ipforward', + '2' => 'l2forward', + '3' => 'reject', + '4' => 'fastl4', + '5' => 'fasthttp', + '6' => 'stateless', + '7' => 'dhcp-relay', + '8' => 'internal', }, - ltmPoolDisallowSnat => { - '0' => 'allowed', - '1' => 'disallowed', + ltmSipProfileInsertVia => { + '0' => 'false', + '1' => 'true', }, - ltmServerSslGenericAlert => { + ltmDnsProfileFastDnsEnabled => { '0' => 'false', '1' => 'true', }, @@ -4866,101 +4848,25 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'F5-BIGIP-LOCAL-MIB'} = '2' => 'disabled', '3' => 'disabledbyparent', }, - ltmTcpProfileDsack => { - '0' => 'false', - '1' => 'true', - }, - ltmPoolMemberMonitorStatus => { - '0' => 'unchecked', - '1' => 'checking', - '2' => 'inband', - '3' => 'forced-up', - '4' => 'up', - '18' => 'addr-down', - '19' => 'down', - '20' => 'forced-down', - '21' => 'maint', - '22' => 'irule-down', - '23' => 'inband-down', - '24' => 'down-manual-resume', - }, - ltmHttpCompressionProfileSelective => { - '0' => 'false', - '1' => 'true', - }, - ltmNodeAddrNewSessionEnable => { - '1' => 'user-disabled', - '2' => 'user-enabled', - '3' => 'monitor-enabled', - '4' => 'monitor-disabled', - }, - ltmLsnLogProfileConfigSource => { + ltmIiopProfileConfigSource => { '0' => 'usercfg', '1' => 'basecfg', }, - ltmIsessionProfileConnectionReuse => { + ltmVirtualServSnatType => { + '0' => 'none', + '1' => 'transaddr', + '2' => 'snatpool', + '3' => 'automap', + }, + ltmHttpCompressionProfileCpusaver => { + '0' => 'false', + '1' => 'true', + }, + ltmHttpProfileTruncatedRedirects => { '0' => 'disabled', '1' => 'enabled', }, - ltmXmlProfileMultipleQueryMatches => { - '0' => 'false', - '1' => 'true', - }, - ltmServerSslConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', - }, - ltmTransAddrEnabled => { - '0' => 'false', - '1' => 'true', - }, - ltmSipProfileConfigSource => { - '0' => 'usercfg', - '1' => 'basecfg', - }, - ltmClientSslSslSignHash => { - '0' => 'any', - '1' => 'sha1', - '2' => 'sha256', - '3' => 'sha384', - }, - ltmAttrMirrorState => { - '0' => 'disabled', - '1' => 'enabled', - }, - ltmClientSslAllowNonssl => { - '0' => 'false', - '1' => 'true', - }, - ltmHttpProfileRamcacheInsertAgeHeader => { - '0' => 'disable', - '1' => 'enable', - }, - ltmVirtualServSfFlags => { - '0' => 'disabled', - '1' => 'enabled', - }, - ltmIsessionProfileCompressionAdaptive => { - '0' => 'disabled', - '1' => 'enabled', - }, - ltmDnsProfileLoggingEnabled => { - '0' => 'false', - '1' => 'true', - }, - ltmTcpProfileAbc => { - '0' => 'false', - '1' => 'true', - }, - ltmDosApplicationLatencyBasedUrlClientSideDefense => { - '0' => 'false', - '1' => 'true', - }, - ltmAuthProfileMode => { - '0' => 'disabled', - '1' => 'enabled', - }, - ltmDosApplicationLatencyBasedUrlRateLimiting => { + ltmSipProfileTerminateBye => { '0' => 'false', '1' => 'true', }, @@ -4978,22 +4884,120 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'F5-BIGIP-LOCAL-MIB'} = '23' => 'inband-down', '24' => 'down-manual-resume', }, - ltmHttpCompressionProfileConfigSource => { + ltmDnsCacheType => { + '0' => 'resolver', + '1' => 'validating-resolver', + '2' => 'transparent-resolver', + }, + ltmRtspProfileConfigSource => { '0' => 'usercfg', '1' => 'basecfg', }, - ltmServerSslUncleanShutdown => { + ltmIiopProfilePersistObjectKey => { '0' => 'false', '1' => 'true', }, - ltmServerSslProxySsl => { + ltmFastL4ProfileIpFragReass => { '0' => 'false', '1' => 'true', }, - ltmDnsProfileDns64AdditionalRewrite => { - '0' => 'disable', - '1' => 'v6only', - '2' => 'v4only', - '3' => 'any', + ltmTcpProfileConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmIsessionProfileTargetVirtual => { + '0' => 'none', + '1' => 'hostmatchnoisession', + '2' => 'hostmatchall', + '3' => 'matchall', + }, + ltmHttpProfilePassthroughOversizeClientHeaders => { + '0' => 'false', + '1' => 'true', + }, + ltmTcpProfileMptcpDebug => { + '0' => 'false', + '1' => 'true', + }, + ltmFastL4ProfileLateBinding => { + '0' => 'false', + '1' => 'true', + }, + ltmAlgLogProfileEndControlAction => { + '1' => 'disabled', + '2' => 'enabled', + '3' => 'backup-allocation-only', + }, + ltmPersistProfileMsrdpNoSessionDir => { + '0' => 'false', + '1' => 'true', + }, + ltmVsStatusEnabledState => { + '0' => 'none', + '1' => 'enabled', + '2' => 'disabled', + '3' => 'disabledbyparent', + }, + ltmLsnPoolHairpinMode => { + '0' => 'disabled', + '1' => 'enabled', + }, + ltmRateFilterDirection => { + '0' => 'any', + '1' => 'client', + '2' => 'server', + }, + ltmFastHttpProfileConnpoolReplenish => { + '0' => 'false', + '1' => 'true', + }, + ltmFwPolicyRuleStatRuleStatType => { + '1' => 'enforced', + '2' => 'staged', + '3' => 'active', + '4' => 'overlapper', + }, + ltmVirtualAddrEnabledState => { + '0' => 'none', + '1' => 'enabled', + '2' => 'disabled', + '3' => 'disabledbyparent', + }, + ltmServerSslDropExpCert => { + '0' => 'false', + '1' => 'true', + }, + ltmVAddrStatusAvailState => { + '0' => 'none', + '1' => 'green', + '2' => 'yellow', + '3' => 'red', + '4' => 'blue', + '5' => 'gray', + }, + ltmNatArpEnabled => { + '0' => 'false', + '1' => 'true', + }, + ltmAlgLogProfileConfigSource => { + '0' => 'usercfg', + '1' => 'basecfg', + }, + ltmVirtualServSfFlags => { + '0' => 'disabled', + '1' => 'enabled', + }, + ltmDosApplicationLatencyBasedIpClientSideDefense => { + '0' => 'false', + '1' => 'true', + }, + ltmHttpProfilePassthroughUnknownMethod => { + '0' => 'reject', + '1' => 'allow', + '2' => 'passthrough', + }, + ltmNatEnabled => { + '0' => 'false', + '1' => 'true', }, }; diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPSYSTEMMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPSYSTEMMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPSYSTEMMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPSYSTEMMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FCEOSMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FCEOSMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FCEOSMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FCEOSMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FCMGMTMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FCMGMTMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FCMGMTMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FCMGMTMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FIBRECHANNELFEMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FIBRECHANNELFEMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FIBRECHANNELFEMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FIBRECHANNELFEMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FORTINETCOREMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FORTINETCOREMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FORTINETCOREMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FORTINETCOREMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FORTINETFORTIGATEMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FORTINETFORTIGATEMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FORTINETFORTIGATEMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FORTINETFORTIGATEMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FOUNDRYSNAGENTMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FOUNDRYSNAGENTMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FOUNDRYSNAGENTMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FOUNDRYSNAGENTMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FOUNDRYSNSWL4SWITCHGROUPMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FOUNDRYSNSWL4SWITCHGROUPMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FOUNDRYSNSWL4SWITCHGROUPMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/FOUNDRYSNSWL4SWITCHGROUPMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/GENUAMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/GENUAMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/GENUAMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/GENUAMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HH3CENTITYEXTMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HH3CENTITYEXTMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HH3CENTITYEXTMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HH3CENTITYEXTMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HOSTRESOURCESMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HOSTRESOURCESMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HOSTRESOURCESMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HOSTRESOURCESMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HPICFCHASSIS.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HPICFCHASSIS.pm new file mode 100644 index 0000000..6ce89a0 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HPICFCHASSIS.pm @@ -0,0 +1,93 @@ +package Monitoring::GLPlugin::SNMP::MibsAndOids::HPICFCHASSIS; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::origin->{'HP-ICF-CHASSIS'} = { + url => '', + name => 'HP-ICF-CHASSIS', +}; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{'HP-ICF-CHASSIS'} = + '1.3.6.1.4.1.11.2.14.11.1.2.6'; +# sensor-table, because lots of oids will be superseeded by std. entity-mib +# However, the hpicfSensorTable will still be valid. + +$Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'HP-ICF-CHASSIS'} = { + hpicfChassisMib => '1.3.6.1.4.1.11.2.14.10.2.3', + hpicfChassisConformance => '1.3.6.1.4.1.11.2.14.10.2.3.1', + hpicfChassisCompliances => '1.3.6.1.4.1.11.2.14.10.2.3.1.1', + hpicfChassisGroups => '1.3.6.1.4.1.11.2.14.10.2.3.1.2', + hpicfChassis => '1.3.6.1.4.1.11.2.14.11.1.2', + hpicfChassisId => '1.3.6.1.4.1.11.2.14.11.1.2.1', + hpicfChassisNumSlots => '1.3.6.1.4.1.11.2.14.11.1.2.2', + hpicfSlotTable => '1.3.6.1.4.1.11.2.14.11.1.2.3', + hpicfSlotEntry => '1.3.6.1.4.1.11.2.14.11.1.2.3.1', + hpicfSlotIndex => '1.3.6.1.4.1.11.2.14.11.1.2.3.1.1', + hpicfSlotObjectId => '1.3.6.1.4.1.11.2.14.11.1.2.3.1.2', + hpicfSlotLastChange => '1.3.6.1.4.1.11.2.14.11.1.2.3.1.3', + hpicfSlotDescr => '1.3.6.1.4.1.11.2.14.11.1.2.3.1.4', + hpicfEntityTable => '1.3.6.1.4.1.11.2.14.11.1.2.4', + hpicfEntityEntry => '1.3.6.1.4.1.11.2.14.11.1.2.4.1', + hpicfEntityIndex => '1.3.6.1.4.1.11.2.14.11.1.2.4.1.1', + hpicfEntityFunction => '1.3.6.1.4.1.11.2.14.11.1.2.4.1.2', + hpicfEntityObjectId => '1.3.6.1.4.1.11.2.14.11.1.2.4.1.3', + hpicfEntityDescr => '1.3.6.1.4.1.11.2.14.11.1.2.4.1.4', + hpicfEntityTimestamp => '1.3.6.1.4.1.11.2.14.11.1.2.4.1.5', + hpicfSlotMapTable => '1.3.6.1.4.1.11.2.14.11.1.2.5', + hpicfSlotMapEntry => '1.3.6.1.4.1.11.2.14.11.1.2.5.1', + hpicfSlotMapSlot => '1.3.6.1.4.1.11.2.14.11.1.2.5.1.1', + hpicfSlotMapEntity => '1.3.6.1.4.1.11.2.14.11.1.2.5.1.2', + hpicfSensorTable => '1.3.6.1.4.1.11.2.14.11.1.2.6', + hpicfSensorEntry => '1.3.6.1.4.1.11.2.14.11.1.2.6.1', + hpicfSensorIndex => '1.3.6.1.4.1.11.2.14.11.1.2.6.1.1', + hpicfSensorObjectId => '1.3.6.1.4.1.11.2.14.11.1.2.6.1.2', + hpicfSensorNumber => '1.3.6.1.4.1.11.2.14.11.1.2.6.1.3', + hpicfSensorStatus => '1.3.6.1.4.1.11.2.14.11.1.2.6.1.4', + hpicfSensorStatusDefinition => 'HP-ICF-CHASSIS::hpicfSensorStatus', + hpicfSensorWarnings => '1.3.6.1.4.1.11.2.14.11.1.2.6.1.5', + hpicfSensorFailures => '1.3.6.1.4.1.11.2.14.11.1.2.6.1.6', + hpicfSensorDescr => '1.3.6.1.4.1.11.2.14.11.1.2.6.1.7', + hpicfChassisAddrTable => '1.3.6.1.4.1.11.2.14.11.1.2.7', + hpicfChassisAddrEntry => '1.3.6.1.4.1.11.2.14.11.1.2.7.1', + hpicfChasAddrType => '1.3.6.1.4.1.11.2.14.11.1.2.7.1.1', + hpicfChasAddrTypeDefinition => 'HP-ICF-CHASSIS::hpicfChasAddrType', + hpicfChasAddrAddress => '1.3.6.1.4.1.11.2.14.11.1.2.7.1.2', + hpicfChasAddrEntity => '1.3.6.1.4.1.11.2.14.11.1.2.7.1.3', + hpChassisTemperature => '1.3.6.1.4.1.11.2.14.11.1.2.8', + hpSystemAirTempTable => '1.3.6.1.4.1.11.2.14.11.1.2.8.1', + hpSystemAirTempEntry => '1.3.6.1.4.1.11.2.14.11.1.2.8.1.1', + hpSystemAirSensor => '1.3.6.1.4.1.11.2.14.11.1.2.8.1.1.1', + hpSystemAirName => '1.3.6.1.4.1.11.2.14.11.1.2.8.1.1.2', + hpSystemAirCurrentTemp => '1.3.6.1.4.1.11.2.14.11.1.2.8.1.1.3', + hpSystemAirMaxTemp => '1.3.6.1.4.1.11.2.14.11.1.2.8.1.1.4', + hpSystemAirMinTemp => '1.3.6.1.4.1.11.2.14.11.1.2.8.1.1.5', + hpSystemAirOverTemp => '1.3.6.1.4.1.11.2.14.11.1.2.8.1.1.6', + hpSystemAirOverTempDefinition => 'HP-ICF-CHASSIS::hpSystemAirOverTemp', + hpSystemAirThresholdTemp => '1.3.6.1.4.1.11.2.14.11.1.2.8.1.1.7', + hpSystemAirAvgTemp => '1.3.6.1.4.1.11.2.14.11.1.2.8.1.1.8', + hpSystemAirEntPhysicalIndex => '1.3.6.1.4.1.11.2.14.11.1.2.8.1.1.9', + hpicfFanTrayType => '1.3.6.1.4.1.11.2.14.11.1.2.9', + hpicfFanTrayTypeDefinition => 'HP-ICF-CHASSIS::hpicfFanTrayType', + hpicfOpacityShieldInstalled => '1.3.6.1.4.1.11.2.14.11.1.2.10', +}; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'HP-ICF-CHASSIS'} = { + hpicfFanTrayType => { + '1' => 'standard', + '2' => 'highPerformance', + }, + hpicfSensorStatus => { + '1' => 'unknown', + '2' => 'bad', + '3' => 'warning', + '4' => 'good', + '5' => 'notPresent', + }, + hpicfChasAddrType => { + '1' => 'ipAddr', + '2' => 'ipxAddr', + '3' => 'macAddr', + }, + hpSystemAirOverTemp => { + '1' => 'yes', + '2' => 'no', + }, +}; diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HUAWEIENTITYEXTENTMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HUAWEIENTITYEXTENTMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HUAWEIENTITYEXTENTMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HUAWEIENTITYEXTENTMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IANAIFTYPEMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IANAIFTYPEMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IANAIFTYPEMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IANAIFTYPEMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IANARTPROTOMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IANARTPROTOMIB.pm new file mode 100644 index 0000000..392275c --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IANARTPROTOMIB.pm @@ -0,0 +1,51 @@ +package Monitoring::GLPlugin::SNMP::MibsAndOids::IANARTPROTOMIB; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::origin->{'IANA-RTPROTO-MIB'} = { + url => '', + name => 'IANA-RTPROTO-MIB', +}; + +#$Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{'IANA-RTPROTO-MIB'} = + +$Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'IANA-RTPROTO-MIB'} = { + ianaRtProtoMIB => '0.84', +}; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'IANA-RTPROTO-MIB'} = { + IANAipRouteProtocol => { + '1' => 'other', + '2' => 'local', + '3' => 'netmgmt', + '4' => 'icmp', + '5' => 'egp', + '6' => 'ggp', + '7' => 'hello', + '8' => 'rip', + '9' => 'isIs', + '10' => 'esIs', + '11' => 'ciscoIgrp', + '12' => 'bbnSpfIgp', + '13' => 'ospf', + '14' => 'bgp', + '15' => 'idpr', + '16' => 'ciscoEigrp', + '17' => 'dvmrp', + '18' => 'rpl', + '19' => 'dhcp', + '20' => 'ttdp', + }, + IANAipMRouteProtocol => { + '1' => 'other', + '2' => 'local', + '3' => 'netmgmt', + '4' => 'dvmrp', + '5' => 'mospf', + '6' => 'pimSparseDense', + '7' => 'cbt', + '8' => 'pimSparseMode', + '9' => 'pimDenseMode', + '10' => 'igmpOnly', + '11' => 'bgmp', + '12' => 'msdp', + }, +}; diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IEEE8023LAGMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IEEE8023LAGMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IEEE8023LAGMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IEEE8023LAGMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IFMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IFMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IFMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IFMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/INETADDRESSMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/INETADDRESSMIB.pm similarity index 60% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/INETADDRESSMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/INETADDRESSMIB.pm index 9c3f679..7816bd7 100644 --- a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/INETADDRESSMIB.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/INETADDRESSMIB.pm @@ -20,6 +20,30 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'INET-ADDRESS-MIB'} = { 4 => 'ipv6z', 16 => 'dns', }, + InetAddressMaker => sub { + # wenn die Adresse in den Indizes steckt, dann ruft man das hier + # mit den Einzelteilen als Array auf + my ($addrtype, $addrlen, @addroctets) = @_; + if ($addrtype && $addrtype eq "ipv6") { + my $maxidx = $addrlen / 2 - 1; + return join(":", + map { + my $idx = 2*$_; + sprintf("%02x", $addroctets[$idx]). + sprintf("%02x", $addroctets[$idx+1]) + } (0..$maxidx) + ); + return join(":", map { sprintf "%02x", $_ } @addroctets[0..$addrlen-1]); + } elsif ($addrtype && $addrtype eq "ipv4") { + return join(".", @addroctets[0..$addrlen-1]); + } else { + #use Data::Dumper; +#printf STDERR "------------------------------------------------\n"; +#printf STDERR "%s\n", Data::Dumper::Dumper([$addr, $addrtype]); +#printf STDERR "..------------------------------------------------\n"; + return sprintf "type=%s, len=%s", $addrtype, $addrlen; + } + }, InetAddress => sub { my ($addr, $addrtype) = @_; if ($addrtype && $addrtype eq "ipv6") { @@ -27,11 +51,7 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'INET-ADDRESS-MIB'} = { } elsif ($addrtype && $addrtype eq "ipv4") { return Monitoring::GLPlugin::SNMP::TableItem->new()->unhex_ip($addr); } else { - #use Data::Dumper; -#printf STDERR "------------------------------------------------\n"; -#printf STDERR "%s\n", Data::Dumper::Dumper([$addr, $addrtype]); -#printf STDERR "..------------------------------------------------\n"; - return "xxx"; + return "unsupported_address_format: ".$addrtype; } } }; diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IPFORWARDMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IPFORWARDMIB.pm similarity index 95% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IPFORWARDMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IPFORWARDMIB.pm index c0d51dc..038bc7e 100644 --- a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IPFORWARDMIB.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IPFORWARDMIB.pm @@ -67,6 +67,7 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'IP-FORWARD-MIB'} = { inetCidrRouteType => '1.3.6.1.2.1.4.24.7.1.8', inetCidrRouteTypeDefinition => 'IP-FORWARD-MIB::inetCidrRouteType', inetCidrRouteProto => '1.3.6.1.2.1.4.24.7.1.9', + inetCidrRouteProtoDefinition => 'IANA-RTPROTO-MIB::IANAipRouteProtocol', inetCidrRouteAge => '1.3.6.1.2.1.4.24.7.1.10', inetCidrRouteNextHopAS => '1.3.6.1.2.1.4.24.7.1.11', inetCidrRouteMetric1 => '1.3.6.1.2.1.4.24.7.1.12', @@ -75,6 +76,7 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'IP-FORWARD-MIB'} = { inetCidrRouteMetric4 => '1.3.6.1.2.1.4.24.7.1.15', inetCidrRouteMetric5 => '1.3.6.1.2.1.4.24.7.1.16', inetCidrRouteStatus => '1.3.6.1.2.1.4.24.7.1.17', + inetCidrRouteStatusDefinition => 'SNMPv2-TC-v1-MIB::RowStatus', inetCidrRouteDiscards => '1.3.6.1.2.1.4.24.8', }; @@ -120,6 +122,10 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'IP-FORWARD-MIB'} = { '14' => 'bgp', '15' => 'idpr', '16' => 'ciscoEigrp', + '17' => 'dvmrp', + '18' => 'rpl', + '19' => 'dhcp', + '20' => 'ttdp', }, ipCidrRouteType => { '1' => 'other', diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IPMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IPMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IPMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IPMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNIPERALARMMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNIPERALARMMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNIPERALARMMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNIPERALARMMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNIPERIVEMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNIPERIVEMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNIPERIVEMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNIPERIVEMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNIPERMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNIPERMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNIPERMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNIPERMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNIPERRPSMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNIPERRPSMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNIPERRPSMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNIPERRPSMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNIPERSRX5000SPUMONITORINGMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNIPERSRX5000SPUMONITORINGMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNIPERSRX5000SPUMONITORINGMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNIPERSRX5000SPUMONITORINGMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNOSBGP4V2MIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNOSBGP4V2MIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNOSBGP4V2MIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/JUNOSBGP4V2MIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/LARAMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/LARAMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/LARAMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/LARAMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/LCOSMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/LCOSMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/LCOSMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/LCOSMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/LMSENSORSMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/LMSENSORSMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/LMSENSORSMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/LMSENSORSMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/LOADBALSYSTEMMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/LOADBALSYSTEMMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/LOADBALSYSTEMMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/LOADBALSYSTEMMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/MIB2MIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/MIB2MIB.pm similarity index 91% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/MIB2MIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/MIB2MIB.pm index cab672f..4a4c47e 100644 --- a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/MIB2MIB.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/MIB2MIB.pm @@ -65,21 +65,26 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'MIB-2-MIB'} = { $value =~ /^0x((\w{2} ){7,}(\w{2}){1,})/ || $value =~ /^((\w{2}){8,})/ || $value =~ /^((\w{2} ){8,})/ || - $value =~ /^((\w{2} ){7,}(\w{2}){1,})/ + $value =~ /^((\w{2} ){7,}(\w{2}){1,})/ || + $value =~ /^(([0-9a-fA-F][0-9a-fA-F]){6,})$/ )) { $value = $1; $value =~ s/ //g; $year = hex substr($value, 0, 4); $value = substr($value, 4); - if (length($value) > 6) { + if (length($value) > 12) { ($month, $day, $hour, $minute, $second, $dseconds, $dirutc, $hoursutc, $minutesutc) = unpack "C*", pack "H*", $value; $minutesutc ||= 0; + $dirutc = ($dirutc == 43) ? "+" : ($dirutc == 45) ? "-" : "+"; } else { ($month, $day, $hour, $minute, $second, $dseconds) = unpack "C*", pack "H*", $value; - ($dirutc, $hoursutc, $minutesutc) = ("+", 0, 0); + $second ||= 0; + $dseconds ||= 0; + my @t = localtime(time); + my $gmt_offset_in_hours = (timegm(@t) - timelocal(@t)) / 3600; + ($dirutc, $hoursutc, $minutesutc) = ("+", $gmt_offset_in_hours, 0); } - $dirutc = ($dirutc == 43) ? "+" : ($dirutc == 45) ? "-" : "+"; } elsif ($value && $value =~ /(\d+)-(\d+)-(\d+),(\d+):(\d+):(\d+)\.(\d+),([\+\-]*)(\d+):(\d+)/) { ($year, $month, $day, $hour, $minute, $second, $dseconds, $dirutc, $hoursutc, $minutesutc) = ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10); @@ -92,11 +97,6 @@ $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'MIB-2-MIB'} = { $year -= 1900; $month += 1; } - if ($year == 0 && $month == 0) { - $year = 1970; - $month = 1; - $day = 1; - } my $epoch = timegm($second, $minute, $hour, $day, $month-1, $year-1900); # 1992-5-26,13:30:15.0,-4:0 = Tuesday May 26, 1992 at 1:30:15 PM EDT # Eastern Daylight Time (EDT) is 4 hours behind Coordinated Universal Time (UTC) diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/MINIIFMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/MINIIFMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/MINIIFMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/MINIIFMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETGEARMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETGEARMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETGEARMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETGEARMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETSCREENCHASSISMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETSCREENCHASSISMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETSCREENCHASSISMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETSCREENCHASSISMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETSCREENNSRPMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETSCREENNSRPMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETSCREENNSRPMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETSCREENNSRPMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETSCREENPRODUCTSMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETSCREENPRODUCTSMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETSCREENPRODUCTSMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETSCREENPRODUCTSMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETSCREENRESOURCEMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETSCREENRESOURCEMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETSCREENRESOURCEMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETSCREENRESOURCEMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETSWITCHMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETSWITCHMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETSWITCHMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/NETSWITCHMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OLDCISCOCPUMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OLDCISCOCPUMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OLDCISCOCPUMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OLDCISCOCPUMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OLDCISCOINTERFACESMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OLDCISCOINTERFACESMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OLDCISCOINTERFACESMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OLDCISCOINTERFACESMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OLDNETSWITCHMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OLDNETSWITCHMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OLDNETSWITCHMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OLDNETSWITCHMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OLDSTATISTICSMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OLDSTATISTICSMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OLDSTATISTICSMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OLDSTATISTICSMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ONEACCESSSYSMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ONEACCESSSYSMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ONEACCESSSYSMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ONEACCESSSYSMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OPENBSDCARPMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OPENBSDCARPMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OPENBSDCARPMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OPENBSDCARPMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OPENBSDMEMMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OPENBSDMEMMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OPENBSDMEMMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OPENBSDMEMMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OPENBSDPFMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OPENBSDPFMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OPENBSDPFMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OPENBSDPFMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OPENBSDSENSORSMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OPENBSDSENSORSMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OPENBSDSENSORSMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OPENBSDSENSORSMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OSPFMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OSPFMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OSPFMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OSPFMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OSPFV3MIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OSPFV3MIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OSPFV3MIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OSPFV3MIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PANCOMMONMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PANCOMMONMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PANCOMMONMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PANCOMMONMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PANPRODUCTSMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PANPRODUCTSMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PANPRODUCTSMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PANPRODUCTSMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PHIONMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PHIONMIB.pm new file mode 100644 index 0000000..49cc271 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PHIONMIB.pm @@ -0,0 +1,148 @@ +package Monitoring::GLPlugin::SNMP::MibsAndOids::PHIONMIB; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::origin->{'PHION-MIB'} = { + url => '', + name => 'PHION-MIB', +}; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{'PHION-MIB'} = + '1.3.6.1.4.1.10704'; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'PHION-MIB'} = { + phion => '1.3.6.1.4.1.10704', + firewall => '1.3.6.1.4.1.10704.1', + boxServices => '1.3.6.1.4.1.10704.1.0', + boxServicesTable => '1.3.6.1.4.1.10704.1.0.1', + boxServicesEntry => '1.3.6.1.4.1.10704.1.0.1', + boxServiceName => '1.3.6.1.4.1.10704.1.0.1.1', + boxServiceState => '1.3.6.1.4.1.10704.1.0.1.2', + boxServiceStateDefinition => 'PHION-MIB::ServiceState', + serverServices => '1.3.6.1.4.1.10704.1.1', + serverServicesTable => '1.3.6.1.4.1.10704.1.1.1', + serverServicesEntry => '1.3.6.1.4.1.10704.1.1.1', + serverServiceName => '1.3.6.1.4.1.10704.1.1.1.1', + serverServiceState => '1.3.6.1.4.1.10704.1.1.1.2', + serverServiceStateDefinition => 'PHION-MIB::ServiceState', + phionRelease => '1.3.6.1.4.1.10704.1.2', + phionHotfixes => '1.3.6.1.4.1.10704.1.3', + phionHotfixesTable => '1.3.6.1.4.1.10704.1.3.1', + phionHotfixesEntry => '1.3.6.1.4.1.10704.1.3.1', + hotfixName => '1.3.6.1.4.1.10704.1.3.1.1', + hotfixInstallTime => '1.3.6.1.4.1.10704.1.3.1.2', + hwSensors => '1.3.6.1.4.1.10704.1.4', + hwSensorsTable => '1.3.6.1.4.1.10704.1.4.1', + hwSensorsEntry => '1.3.6.1.4.1.10704.1.4.1', + hwSensorName => '1.3.6.1.4.1.10704.1.4.1.1', + hwSensorType => '1.3.6.1.4.1.10704.1.4.1.2', + hwSensorTypeDefinition => 'PHION-MIB::SensorType', + hwSensorValue => '1.3.6.1.4.1.10704.1.4.1.3', + raidEvents => '1.3.6.1.4.1.10704.1.5', + raidEventsTable => '1.3.6.1.4.1.10704.1.5.1', + raidEventsEntry => '1.3.6.1.4.1.10704.1.5.1', + raidEventIndex => '1.3.6.1.4.1.10704.1.5.1.1', + raidEventSev => '1.3.6.1.4.1.10704.1.5.1.2', + raidEventSevDefinition => 'PHION-MIB::RaidEventSeverity', + raidEventTime => '1.3.6.1.4.1.10704.1.5.1.3', + raidEventText => '1.3.6.1.4.1.10704.1.5.1.4', + vpnTunnels => '1.3.6.1.4.1.10704.1.6', + vpnTunnelsTable => '1.3.6.1.4.1.10704.1.6.1', + vpnTunnelsEntry => '1.3.6.1.4.1.10704.1.6.1', + vpnName => '1.3.6.1.4.1.10704.1.6.1.1', + vpnState => '1.3.6.1.4.1.10704.1.6.1.2', + vpnStateDefinition => 'PHION-MIB::VpnStates', + bgpNeighbors => '1.3.6.1.4.1.10704.1.7', + bgpNeighborsTable => '1.3.6.1.4.1.10704.1.7.1', + bgpNeighborsEntry => '1.3.6.1.4.1.10704.1.7.1', + bgpNeighborAddress => '1.3.6.1.4.1.10704.1.7.1.1', + bgpNeighborState => '1.3.6.1.4.1.10704.1.7.1.2', + ospfNeighbors => '1.3.6.1.4.1.10704.1.8', + ospfNeighborsTable => '1.3.6.1.4.1.10704.1.8.1', + ospfNeighborsEntry => '1.3.6.1.4.1.10704.1.8.1', + ospfNeighborId => '1.3.6.1.4.1.10704.1.8.1.1', + ospfNeighborAddress => '1.3.6.1.4.1.10704.1.8.1.2', + ospfNeighborInterface => '1.3.6.1.4.1.10704.1.8.1.3', + ospfNeighborStatus => '1.3.6.1.4.1.10704.1.8.1.4', + ripNeighbors => '1.3.6.1.4.1.10704.1.9', + ripNeighborsTable => '1.3.6.1.4.1.10704.1.9.1', + ripNeighborsEntry => '1.3.6.1.4.1.10704.1.9.1', + ripNeighborAddress => '1.3.6.1.4.1.10704.1.9.1.1', + ripNeighborState => '1.3.6.1.4.1.10704.1.9.1.2', + fwStats => '1.3.6.1.4.1.10704.1.10', + fwStatsTable => '1.3.6.1.4.1.10704.1.10.1', + fwStatsEntry => '1.3.6.1.4.1.10704.1.10.1', + firewallSessions => '1.3.6.1.4.1.10704.1.10.1.1', + packetThroughput => '1.3.6.1.4.1.10704.1.10.1.2', + dataThroughput => '1.3.6.1.4.1.10704.1.10.1.3', + firewallSessions64 => '1.3.6.1.4.1.10704.1.10.1.4', + packetThroughput64 => '1.3.6.1.4.1.10704.1.10.1.5', + dataThroughput64 => '1.3.6.1.4.1.10704.1.10.1.6', + vpnUsers => '1.3.6.1.4.1.10704.1.11', + trafficShape => '1.3.6.1.4.1.10704.1.12', + trafficShapeTable => '1.3.6.1.4.1.10704.1.12.1', + trafficShapeEntry => '1.3.6.1.4.1.10704.1.12.1', + connectorName => '1.3.6.1.4.1.10704.1.12.1.1', + rate => '1.3.6.1.4.1.10704.1.12.1.2', + sessions => '1.3.6.1.4.1.10704.1.12.1.3', + class1Total => '1.3.6.1.4.1.10704.1.12.1.4', + class1Pakets => '1.3.6.1.4.1.10704.1.12.1.5', + class1Drop => '1.3.6.1.4.1.10704.1.12.1.6', + class2Total => '1.3.6.1.4.1.10704.1.12.1.7', + class2Pakets => '1.3.6.1.4.1.10704.1.12.1.8', + class2Drop => '1.3.6.1.4.1.10704.1.12.1.9', + class3Total => '1.3.6.1.4.1.10704.1.12.1.10', + class3Pakets => '1.3.6.1.4.1.10704.1.12.1.11', + class3Drop => '1.3.6.1.4.1.10704.1.12.1.12', + noDelayTotal => '1.3.6.1.4.1.10704.1.12.1.13', + noDelayPakets => '1.3.6.1.4.1.10704.1.12.1.14', + noDelayDrop => '1.3.6.1.4.1.10704.1.12.1.15', + diskSpace => '1.3.6.1.4.1.10704.1.13', + diskSpaceTable => '1.3.6.1.4.1.10704.1.13.1', + diskSpaceEntry => '1.3.6.1.4.1.10704.1.13.1', + partitionName => '1.3.6.1.4.1.10704.1.13.1.1', + partitionMaxSpace => '1.3.6.1.4.1.10704.1.13.1.2', + partitionFreeSpace => '1.3.6.1.4.1.10704.1.13.1.3', + partitionUsedSpace => '1.3.6.1.4.1.10704.1.13.1.4', + partitionUsedSpacePercent => '1.3.6.1.4.1.10704.1.13.1.5', + event => '1.3.6.1.4.1.10704.10', + eventID => '1.3.6.1.4.1.10704.10.1', + eventIDDescription => '1.3.6.1.4.1.10704.10.2', + eventType => '1.3.6.1.4.1.10704.10.3', + eventAlarmTime => '1.3.6.1.4.1.10704.10.4', + eventLayerDescription => '1.3.6.1.4.1.10704.10.5', + eventClassification => '1.3.6.1.4.1.10704.10.6', + eventRepresentation => '1.3.6.1.4.1.10704.10.7', + eventSeverity => '1.3.6.1.4.1.10704.10.8', + fwCompliances => '1.3.6.1.4.1.10704.20', + fwGroups => '1.3.6.1.4.1.10704.21', + serviceGroups => '1.3.6.1.4.1.10704.21.1', + firmwareGroups => '1.3.6.1.4.1.10704.21.2', + hwGroups => '1.3.6.1.4.1.10704.21.3', + netGroups => '1.3.6.1.4.1.10704.21.4', + eventGroups => '1.3.6.1.4.1.10704.21.5', +}; + +$Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'PHION-MIB'} = { + RaidEventSeverity => { + '0' => 'unknown', + '1' => 'error', + '2' => 'warning', + '3' => 'information', + '4' => 'debug', + }, + ServiceState => { + '0' => 'stopped', + '1' => 'started', + '2' => 'blocked', + '4' => 'removed', + }, + VpnStates => { + '0' => 'down-disabled', + '1' => 'active', + }, + SensorType => { + '0' => 'voltage', + '1' => 'fan', + '2' => 'temperature', + '3' => 'psu-status', + }, +}; diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PROXYMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PROXYMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PROXYMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PROXYMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/RAPIDCITYMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/RAPIDCITYMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/RAPIDCITYMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/RAPIDCITYMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/RESOURCEMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/RESOURCEMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/RESOURCEMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/RESOURCEMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/RMONMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/RMONMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/RMONMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/RMONMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/S5CHASSISMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/S5CHASSISMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/S5CHASSISMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/S5CHASSISMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SENSORMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SENSORMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SENSORMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SENSORMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SNMPFRAMEWORKMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SNMPFRAMEWORKMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SNMPFRAMEWORKMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SNMPFRAMEWORKMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SNMPV2TCV1MIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SNMPV2TCV1MIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SNMPV2TCV1MIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SNMPV2TCV1MIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/STATISTICSMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/STATISTICSMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/STATISTICSMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/STATISTICSMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/STEELHEADEXMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/STEELHEADEXMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/STEELHEADEXMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/STEELHEADEXMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/STEELHEADMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/STEELHEADMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/STEELHEADMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/STEELHEADMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SWMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SWMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SWMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SWMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SYNOPTICSROOTMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SYNOPTICSROOTMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SYNOPTICSROOTMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SYNOPTICSROOTMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SYSTEMRESOURCESMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SYSTEMRESOURCESMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SYSTEMRESOURCESMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/SYSTEMRESOURCESMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/UCDDISKIOMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/UCDDISKIOMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/UCDDISKIOMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/UCDDISKIOMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/UCDSNMPMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/UCDSNMPMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/UCDSNMPMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/UCDSNMPMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/USAGEMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/USAGEMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/USAGEMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/USAGEMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/VRRPMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/VRRPMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/VRRPMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/VRRPMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/WLSXSYSTEMEXTMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/WLSXSYSTEMEXTMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/WLSXSYSTEMEXTMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/WLSXSYSTEMEXTMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/WLSXWLANMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/WLSXWLANMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/WLSXWLANMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/WLSXWLANMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/TableItem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/TableItem.pm similarity index 59% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/TableItem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/TableItem.pm index 7b0cc12..c9c3450 100644 --- a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/TableItem.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/SNMP/TableItem.pm @@ -25,7 +25,7 @@ sub unhex_ip { return $value; } -sub _compact_v6 { +sub compact_v6 { my ($self, $addr) = @_; my @o = split /:/, $addr; @@ -59,22 +59,49 @@ sub _compact_v6 { return $addr; } -sub unhex_ipv6 { +sub old_unhex_ipv6 { my ($self, $value) = @_; - if ($value && $value =~ /^0x(\w{32})/) { + if (! defined $value) { + return $value; # tut mir leid + } elsif ($value =~ /^0x(\w{32})/) { $value = join(":", unpack "C*", pack "H*", $1); } elsif ($value && $value =~ /^0x(\w{2} \w{2} \w{2} \w{2} \w{2} \w{2} \w{2} \w{2} \w{2} \w{2} \w{2} \w{2} \w{2} \w{2} \w{2} \w{2})/) { $value = $1; $value =~ s/ //g; $value = join(":", unpack "C*", pack "H*", $value); - } elsif ($value && $value =~ /^([A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2})/i) { + } elsif ($value =~ /^([A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2})/i) { $value = $1; $value =~ s/ //g; $value = join(":", unpack "C*", pack "H*", $value); - } elsif ($value && unpack("H32", $value) =~ /(\w{4})(\w{4})(\w{4})(\w{4})(\w{4})(\w{4})(\w{4})(\w{4})/) { - $value = join(":", $1, $2, $3, $4, $5, $6, $7, $8); + } elsif (unpack("H*", $value) =~ /^([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})/i) { + #$value = join(":", unpack "C*", pack "H*", $value); + $value = join(":", ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14, $15, $16)); } - return $self->_compact_v6($value); + return $self->compact_v6($value); +} + +sub unhex_ipv6 { + my ($self, $value) = @_; + my @octets = (); + if (! defined $value) { + return $value; # tut mir leid + } elsif ($value =~ /^0x(\w{32})/) { + @octets = unpack "H2" x 16, pack "H*", $1; + } elsif ($value && $value =~ /^0x(\w{2} \w{2} \w{2} \w{2} \w{2} \w{2} \w{2} \w{2} \w{2} \w{2} \w{2} \w{2} \w{2} \w{2} \w{2} \w{2})/) { + $value = $1; + @octets = split(" ", $value); + } elsif ($value =~ /^([A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2} [A-Z0-9]{2})/i) { + $value = $1; + $value =~ s/ //g; + @octets = unpack "H2" x 16, pack "H*", $value; + } elsif (unpack("H*", $value) =~ /^([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})/i) { + @octets = ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14, $15, $16); + } + $value = join(":", + map { my $idx = 2*$_; $octets[$idx].$octets[$idx+1] } (0..7) + ); + return $value; + return $self->compact_v6($value); } sub unhex_mac { diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/TableItem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/TableItem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/TableItem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/TableItem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/UPNP.pm b/check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/UPNP.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/UPNP.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/GLPlugin/lib/Monitoring/GLPlugin/UPNP.pm diff --git a/check_nwc_health/check_nwc_health-7.6/INSTALL b/check_nwc_health/check_nwc_health-7.12.1.3/INSTALL similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/INSTALL rename to check_nwc_health/check_nwc_health-7.12.1.3/INSTALL diff --git a/check_nwc_health/check_nwc_health-7.6/Makefile.am b/check_nwc_health/check_nwc_health-7.12.1.3/Makefile.am similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/Makefile.am rename to check_nwc_health/check_nwc_health-7.12.1.3/Makefile.am diff --git a/check_nwc_health/check_nwc_health-7.6/Makefile.in b/check_nwc_health/check_nwc_health-7.12.1.3/Makefile.in similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/Makefile.in rename to check_nwc_health/check_nwc_health-7.12.1.3/Makefile.in diff --git a/check_nwc_health/check_nwc_health-7.6/NEWS b/check_nwc_health/check_nwc_health-7.12.1.3/NEWS similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/NEWS rename to check_nwc_health/check_nwc_health-7.12.1.3/NEWS diff --git a/check_nwc_health/check_nwc_health-7.6/README b/check_nwc_health/check_nwc_health-7.12.1.3/README similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/README rename to check_nwc_health/check_nwc_health-7.12.1.3/README diff --git a/check_nwc_health/check_nwc_health-7.6/THANKS b/check_nwc_health/check_nwc_health-7.12.1.3/THANKS similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/THANKS rename to check_nwc_health/check_nwc_health-7.12.1.3/THANKS diff --git a/check_nwc_health/check_nwc_health-7.6/TODO b/check_nwc_health/check_nwc_health-7.12.1.3/TODO similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/TODO rename to check_nwc_health/check_nwc_health-7.12.1.3/TODO diff --git a/check_nwc_health/check_nwc_health-7.6/acinclude.m4 b/check_nwc_health/check_nwc_health-7.12.1.3/acinclude.m4 similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/acinclude.m4 rename to check_nwc_health/check_nwc_health-7.12.1.3/acinclude.m4 diff --git a/check_nwc_health/check_nwc_health-7.6/aclocal.m4 b/check_nwc_health/check_nwc_health-7.12.1.3/aclocal.m4 similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/aclocal.m4 rename to check_nwc_health/check_nwc_health-7.12.1.3/aclocal.m4 diff --git a/check_nwc_health/check_nwc_health-7.6/config.guess b/check_nwc_health/check_nwc_health-7.12.1.3/config.guess similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/config.guess rename to check_nwc_health/check_nwc_health-7.12.1.3/config.guess diff --git a/check_nwc_health/check_nwc_health-7.6/config.sub b/check_nwc_health/check_nwc_health-7.12.1.3/config.sub similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/config.sub rename to check_nwc_health/check_nwc_health-7.12.1.3/config.sub diff --git a/check_nwc_health/check_nwc_health-7.6/configure b/check_nwc_health/check_nwc_health-7.12.1.3/configure similarity index 99% rename from check_nwc_health/check_nwc_health-7.6/configure rename to check_nwc_health/check_nwc_health-7.12.1.3/configure index 02876c5..8f8b43d 100755 --- a/check_nwc_health/check_nwc_health-7.6/configure +++ b/check_nwc_health/check_nwc_health-7.12.1.3/configure @@ -1,7 +1,7 @@ #! /bin/sh # From configure.ac . # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for check_nwc_health 7.6. +# Generated by GNU Autoconf 2.69 for check_nwc_health 7.12.1.3. # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. @@ -577,8 +577,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='check_nwc_health' PACKAGE_TARNAME='check_nwc_health' -PACKAGE_VERSION='7.6' -PACKAGE_STRING='check_nwc_health 7.6' +PACKAGE_VERSION='7.12.1.3' +PACKAGE_STRING='check_nwc_health 7.12.1.3' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -1236,7 +1236,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures check_nwc_health 7.6 to adapt to many kinds of systems. +\`configure' configures check_nwc_health 7.12.1.3 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1308,7 +1308,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of check_nwc_health 7.6:";; + short | recursive ) echo "Configuration of check_nwc_health 7.12.1.3:";; esac cat <<\_ACEOF @@ -1393,7 +1393,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -check_nwc_health configure 7.6 +check_nwc_health configure 7.12.1.3 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1410,7 +1410,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by check_nwc_health $as_me 7.6, which was +It was created by check_nwc_health $as_me 7.12.1.3, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2273,7 +2273,7 @@ fi # Define the identity of the package. PACKAGE='check_nwc_health' - VERSION='7.6' + VERSION='7.12.1.3' cat >>confdefs.h <<_ACEOF @@ -3324,7 +3324,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by check_nwc_health $as_me 7.6, which was +This file was extended by check_nwc_health $as_me 7.12.1.3, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -3377,7 +3377,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -check_nwc_health config.status 7.6 +check_nwc_health config.status 7.12.1.3 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/check_nwc_health/check_nwc_health-7.6/configure.ac b/check_nwc_health/check_nwc_health-7.12.1.3/configure.ac similarity index 98% rename from check_nwc_health/check_nwc_health-7.6/configure.ac rename to check_nwc_health/check_nwc_health-7.12.1.3/configure.ac index 7adb28a..9d70e98 100644 --- a/check_nwc_health/check_nwc_health-7.6/configure.ac +++ b/check_nwc_health/check_nwc_health-7.12.1.3/configure.ac @@ -1,7 +1,7 @@ dnl Process this file with autoconf to produce a configure script. AC_REVISION ($Revision: 1.150 $) AC_PREREQ(2.58) -AC_INIT(check_nwc_health,7.6) +AC_INIT(check_nwc_health,7.12.1.3) AM_INIT_AUTOMAKE([1.9 tar-pax]) AM_MAINTAINER_MODE([disable]) AC_CANONICAL_HOST diff --git a/check_nwc_health/check_nwc_health-7.6/install-sh b/check_nwc_health/check_nwc_health-7.12.1.3/install-sh similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/install-sh rename to check_nwc_health/check_nwc_health-7.12.1.3/install-sh diff --git a/check_nwc_health/check_nwc_health-7.6/missing b/check_nwc_health/check_nwc_health-7.12.1.3/missing similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/missing rename to check_nwc_health/check_nwc_health-7.12.1.3/missing diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/ALARMMIB/Component/AlarmSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/ALARMMIB/Component/AlarmSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/ALARMMIB/Component/AlarmSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/ALARMMIB/Component/AlarmSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/AVOS.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/AVOS.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/AVOS.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/AVOS.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/AVOS/Component/ConnectionSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/AVOS/Component/ConnectionSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/AVOS/Component/ConnectionSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/AVOS/Component/ConnectionSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/AVOS/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/AVOS/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/AVOS/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/AVOS/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/AVOS/Component/KeySubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/AVOS/Component/KeySubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/AVOS/Component/KeySubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/AVOS/Component/KeySubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/AVOS/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/AVOS/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/AVOS/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/AVOS/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/AVOS/Component/SecuritySubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/AVOS/Component/SecuritySubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/AVOS/Component/SecuritySubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/AVOS/Component/SecuritySubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Alcatel.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Alcatel.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Alcatel.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Alcatel.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Alcatel/OmniAccess.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Alcatel/OmniAccess.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Alcatel/OmniAccess.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Alcatel/OmniAccess.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Alcatel/OmniAccess/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Alcatel/OmniAccess/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Alcatel/OmniAccess/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Alcatel/OmniAccess/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Alcatel/OmniAccess/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Alcatel/OmniAccess/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Alcatel/OmniAccess/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Alcatel/OmniAccess/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Alcatel/OmniAccess/Component/FanSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Alcatel/OmniAccess/Component/FanSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Alcatel/OmniAccess/Component/FanSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Alcatel/OmniAccess/Component/FanSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Alcatel/OmniAccess/Component/HaSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Alcatel/OmniAccess/Component/HaSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Alcatel/OmniAccess/Component/HaSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Alcatel/OmniAccess/Component/HaSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Alcatel/OmniAccess/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Alcatel/OmniAccess/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Alcatel/OmniAccess/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Alcatel/OmniAccess/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Alcatel/OmniAccess/Component/PowersupplySubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Alcatel/OmniAccess/Component/PowersupplySubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Alcatel/OmniAccess/Component/PowersupplySubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Alcatel/OmniAccess/Component/PowersupplySubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Alcatel/OmniAccess/Component/StorageSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Alcatel/OmniAccess/Component/StorageSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Alcatel/OmniAccess/Component/StorageSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Alcatel/OmniAccess/Component/StorageSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Alcatel/OmniAccess/Component/WlanSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Alcatel/OmniAccess/Component/WlanSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Alcatel/OmniAccess/Component/WlanSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Alcatel/OmniAccess/Component/WlanSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/AlliedTelesyn.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/AlliedTelesyn.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/AlliedTelesyn.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/AlliedTelesyn.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Arista.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Arista.pm similarity index 61% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Arista.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Arista.pm index af2cdbb..26bac80 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Arista.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Arista.pm @@ -19,6 +19,20 @@ sub init { $self->analyze_and_check_mem_subsystem("Classes::HOSTRESOURCESMIB::Component::MemSubsystem"); } elsif ($self->mode =~ /device::ha::/) { $self->analyze_and_check_ha_subsystem("Classes::Arista::Component::HaSubsystem"); + } elsif ($self->mode =~ /device::bgp/) { + if ($self->implements_mib('ARISTA-BGP4V2-MIB')) { + $self->analyze_and_check_interface_subsystem("Classes::Arista::ARISTABGP4V2MIB::Component::PeerSubsystem"); + } else { + $self->establish_snmp_secondary_session(); + if ($self->implements_mib('ARISTA-BGP4V2-MIB')) { + $self->analyze_and_check_interface_subsystem("Classes::Arista::ARISTABGP4V2MIB::Component::PeerSubsystem"); + } else { + # na laeggst me aa am ooosch + $self->establish_snmp_session(); + $self->debug("no ARISTA-BGP4V2-MIB, fallback"); + $self->no_such_mode(); + } + } } else { $self->no_such_mode(); } diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Arista/ARISTABGP4V2MIB/Components/PeerSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Arista/ARISTABGP4V2MIB/Components/PeerSubsystem.pm new file mode 100644 index 0000000..607b164 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Arista/ARISTABGP4V2MIB/Components/PeerSubsystem.pm @@ -0,0 +1,315 @@ +package Classes::Arista::ARISTABGP4V2MIB::Component::PeerSubsystem; +our @ISA = qw(Monitoring::GLPlugin::SNMP::Item); +use strict; + +our $errorcodes = { + # REFERENCE "RFC 4271, Section 4.5." + 0 => { + 0 => 'No Error', + }, + 1 => { + 0 => 'MESSAGE Header Error', + 1 => 'Connection Not Synchronized', + 2 => 'Bad Message Length', + 3 => 'Bad Message Type', + }, + 2 => { + 0 => 'OPEN Message Error', + 1 => 'Unsupported Version Number', + 2 => 'Bad Peer AS', + 3 => 'Bad BGP Identifier', + 4 => 'Unsupported Optional Parameter', + 5 => '[Deprecated => see Appendix A]', + 6 => 'Unacceptable Hold Time', + }, + 3 => { + 0 => 'UPDATE Message Error', + 1 => 'Malformed Attribute List', + 2 => 'Unrecognized Well-known Attribute', + 3 => 'Missing Well-known Attribute', + 4 => 'Attribute Flags Error', + 5 => 'Attribute Length Error', + 6 => 'Invalid ORIGIN Attribute', + 7 => '[Deprecated => see Appendix A]', + 8 => 'Invalid NEXT_HOP Attribute', + 9 => 'Optional Attribute Error', + 10 => 'Invalid Network Field', + 11 => 'Malformed AS_PATH', + }, + 4 => { + 0 => 'Hold Timer Expired', + }, + 5 => { + 0 => 'Finite State Machine Error', + }, + 6 => { + 0 => 'Cease', + 1 => 'Maximum Number of Prefixes Reached', + 2 => 'Administrative Shutdown', + 3 => 'Peer De-configured', + 4 => 'Administrative Reset', + 5 => 'Connection Rejected', + 6 => 'Other Configuration Change', + 7 => 'Connection Collision Resolution', + 8 => 'Out of Resources', + }, +}; + +sub init { + my ($self) = @_; + $self->{peers} = []; + $self->implements_mib('INET-ADDRESS-MIB'); + $self->get_snmp_tables('ARISTA-BGP4V2-MIB', [ + ['peers', 'aristaBgp4V2PeerTable+aristaBgp4V2PeerEventTimesTable+aristaBgp4V2PeerErrorsTable', 'Classes::Arista::ARISTABGP4V2MIB::Component::PeerSubsystem::Peer2', sub { + my $o = shift; + # regexp -> arschlecken! + if ($self->opts->name) { + return $self->filter_name($o->compact_v6($o->{aristaBgp4V2PeerRemoteAddr})); + } else { + return 1; + } + }], + ]); +} + +sub check { + my ($self) = @_; + my $errorfound = 0; + $self->add_info('checking bgp peers'); + if ($self->mode =~ /peer::list/) { + foreach (sort {$a->{aristaBgp4V2PeerRemoteAddr} cmp $b->{aristaBgp4V2PeerRemoteAddr}} @{$self->{peers}}) { + printf "%s\n", $_->{aristaBgp4V2PeerRemoteAddr}; + #$_->list(); + } + $self->add_ok("have fun"); + } elsif ($self->mode =~ /peer::count/) { + $self->add_info(sprintf "found %d peers", scalar(@{$self->{peers}})); + $self->set_thresholds(warning => '1:', critical => '1:'); + $self->add_message($self->check_thresholds(scalar(@{$self->{peers}}))); + $self->add_perfdata( + label => 'peers', + value => scalar(@{$self->{peers}}), + ); + } elsif ($self->mode =~ /peer::watch/) { + # take a snapshot of the peer list. -> good baseline + # warning if there appear peers, mitigate to ok + # critical if warn/crit percent disappear + $self->{numOfPeers} = scalar (@{$self->{peers}}); + $self->{peerNameList} = [map { $_->{aristaBgp4V2PeerRemoteAddr} } @{$self->{peers}}]; + $self->opts->override_opt('lookback', 3600) if ! $self->opts->lookback; + if ($self->opts->reset) { + my $statefile = $self->create_statefile(name => 'bgppeerlist', lastarray => 1); + unlink $statefile if -f $statefile; + } + $self->valdiff({name => 'bgppeerlist', lastarray => 1}, + qw(peerNameList numOfPeers)); + my $problem = 0; + if ($self->opts->warning || $self->opts->critical) { + $self->set_thresholds(warning => $self->opts->warning, + critical => $self->opts->critical); + my $before = $self->{numOfPeers} - scalar(@{$self->{delta_found_peerNameList}}) + scalar(@{$self->{delta_lost_peerNameList}}); + # use own delta_numOfPeers, because the glplugin version treats + # negative deltas as overflows + $self->{delta_numOfPeers} = $self->{numOfPeers} - $before; + if ($self->opts->units && $self->opts->units eq "%") { + my $delta_pct = $before ? (($self->{delta_numOfPeers} / $before) * 100) : 0; + $self->add_message($self->check_thresholds($delta_pct), + sprintf "%.2f%% delta, before: %d, now: %d", $delta_pct, $before, $self->{numOfPeers}); + $problem = $self->check_thresholds($delta_pct); + } else { + $self->add_message($self->check_thresholds($self->{delta_numOfPeers}), + sprintf "%d delta, before: %d, now: %d", $self->{delta_numOfPeers}, $before, $self->{numOfPeers}); + $problem = $self->check_thresholds($self->{delta_numOfPeers}); + } + if (scalar(@{$self->{delta_found_peerNameList}}) > 0) { + $self->add_ok(sprintf 'found: %s', + join(", ", @{$self->{delta_found_peerNameList}})); + } + if (scalar(@{$self->{delta_lost_peerNameList}}) > 0) { + $self->add_ok(sprintf 'lost: %s', + join(", ", @{$self->{delta_lost_peerNameList}})); + } + } else { + if (scalar(@{$self->{delta_found_peerNameList}}) > 0) { + $self->add_warning(sprintf '%d new bgp peers (%s)', + scalar(@{$self->{delta_found_peerNameList}}), + join(", ", @{$self->{delta_found_peerNameList}})); + $problem = 1; + } + if (scalar(@{$self->{delta_lost_peerNameList}}) > 0) { + $self->add_critical(sprintf '%d bgp peers missing (%s)', + scalar(@{$self->{delta_lost_peerNameList}}), + join(", ", @{$self->{delta_lost_peerNameList}})); + $problem = 2; + } + $self->add_ok(sprintf 'found %d bgp peers', scalar (@{$self->{peers}})); + } + if ($problem) { # relevant only for lookback=9999 and support contract customers + $self->valdiff({name => 'bgppeerlist', lastarray => 1, freeze => 1}, + qw(peerNameList numOfPeers)); + } else { + $self->valdiff({name => 'bgppeerlist', lastarray => 1, freeze => 2}, + qw(peerNameList numOfPeers)); + } + $self->add_perfdata( + label => 'num_peers', + value => scalar (@{$self->{peers}}), + ); + } elsif ($self->mode =~ /peer::status/) { + if (scalar(@{$self->{peers}}) == 0) { + $self->add_unknown('no peers'); + return; + } + # es gibt + # kleine installation: 1 peer zu 1 as, evt 2. as als fallback + # grosse installation: n peer zu 1 as, alternative routen zum provider + # n peer zu m as, mehrere provider, mehrere alternativrouten + # 1 ausfall on 4 peers zu as ist egal + my $as_numbers = {}; + foreach (@{$self->{peers}}) { + $_->check(); + if (! exists $as_numbers->{$_->{aristaBgp4V2PeerRemoteAs}}->{peers}) { + $as_numbers->{$_->{aristaBgp4V2PeerRemoteAs}}->{peers} = []; + $as_numbers->{$_->{aristaBgp4V2PeerRemoteAs}}->{availability} = 100; + } + push(@{$as_numbers->{$_->{aristaBgp4V2PeerRemoteAs}}->{peers}}, $_); + } + if ($self->opts->name2) { + $self->clear_ok(); + $self->clear_critical(); + if ($self->opts->name2 eq "_ALL_") { + $self->opts->override_opt("name2", join(",", keys %{$as_numbers})); + } + foreach my $as (split(",", $self->opts->name2)) { + my $asname = ""; + if ($as =~ /(\d+)=(\w+)/) { + $as = $1; + $asname = $2; + } + if (exists $as_numbers->{$as}) { + my $num_peers = scalar(@{$as_numbers->{$as}->{peers}}); + my $num_ok_peers = scalar(grep { $_->{aristaBgp4V2PeerFaulty} == 0 } @{$as_numbers->{$as}->{peers}}); + my $num_admdown_peers = scalar(grep { $_->{aristaBgp4V2PeerAdminStatus} eq "stop" } @{$as_numbers->{$as}->{peers}}); + $as_numbers->{$as}->{availability} = 100 * $num_ok_peers / $num_peers; + $self->set_thresholds(warning => "100:", critical => "50:"); + $self->add_message($self->check_thresholds($as_numbers->{$as}->{availability}), + sprintf "%d from %d connections to %s are up (%.2f%%%s)", + $num_ok_peers, $num_peers, $asname ? $asname : "AS".$as, + $as_numbers->{$as}->{availability}, + $num_admdown_peers ? sprintf(", but %d are admin down and counted as up!", $num_admdown_peers) : ""); + } else { + $self->add_critical(sprintf 'found no peer for %s', $asname ? $asname : "AS".$as); + } + } + } + if ($self->opts->report eq "short") { + $self->clear_ok(); + $self->add_ok('no problems') if ! $self->check_messages(); + } + } else { + $self->no_such_mode(); + } +} + + +package Classes::Arista::ARISTABGP4V2MIB::Component::PeerSubsystem::Peer2; +our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); +use strict; +use constant { OK => 0, WARNING => 1, CRITICAL => 2, UNKNOWN => 3 }; + +sub finish { + my ($self) = @_; + my @tmp_indices = @{$self->{indices}}; + my $last_tmp = scalar(@tmp_indices) - 1; + $self->{aristaBgp4V2PeerInstance} = $tmp_indices[0]; + shift @tmp_indices; + $self->{aristaBgp4V2PeerRemoteAddrType} = $self->mibs_and_oids_definition( + 'INET-ADDRESS-MIB', 'InetAddressType', $tmp_indices[0]); + shift @tmp_indices; + + $self->{aristaBgp4V2PeerRemoteAddr} = $self->mibs_and_oids_definition( + 'INET-ADDRESS-MIB', 'InetAddressMaker', + $self->{aristaBgp4V2PeerRemoteAddrType}, @tmp_indices); + + # aristaBgp4V2PeerLocalAddr kann ein Leerstring sein + ##$self->{aristaBgp4V2PeerLocalAddr} = $self->mibs_and_oids_definition( + ## 'INET-ADDRESS-MIB', 'InetAddress', + ## $self->{aristaBgp4V2PeerLocalAddr}, $self->{aristaBgp4V2PeerType}) if $self->{aristaBgp4V2PeerLocalAddr}; + $self->{aristaBgp4V2PeerLocalAddr} = "999.999.999.999" if ! $self->{aristaBgp4V2PeerLocalAddr}; + + $self->{aristaBgp4V2PeerLastError} |= "00 00"; + my $errorcode = 0; + my $subcode = 0; + if (lc $self->{aristaBgp4V2PeerLastError} =~ /([0-9a-f]+)\s+([0-9a-f]+)/) { + $errorcode = hex($1) * 1; + $subcode = hex($2) * 1; + } + $self->{aristaBgp4V2PeerLastError} = $Classes::Arista::ARISTABGP4V2MIB::Component::PeerSubsystem::errorcodes->{$errorcode}->{$subcode}; + $self->{aristaBgp4V2PeerRemoteAsName} = ""; + $self->{aristaBgp4V2PeerRemoteAsImportant} = 0; # if named in --name2 + $self->{aristaBgp4V2PeerFaulty} = 0; + my @parts = gmtime($self->{aristaBgp4V2PeerFsmEstablishedTime}); + $self->{aristaBgp4V2PeerFsmEstablishedTime} = sprintf ("%dd, %dh, %dm, %ds",@parts[7,2,1,0]); + + if ($self->{aristaBgp4V2PeerRemoteAddrType} eq "ipv6") { + $self->{aristaBgp4V2PeerRemoteAddrCompact} = $self->compact_v6($self->{aristaBgp4V2PeerRemoteAddr}); + $self->{aristaBgp4V2PeerLocalAddrCompact} = $self->compact_v6($self->{aristaBgp4V2PeerLocalAddr}); + } else { + $self->{aristaBgp4V2PeerRemoteAddrCompact} = $self->{aristaBgp4V2PeerRemoteAddr}; + $self->{aristaBgp4V2PeerLocalAddrCompact} = $self->{aristaBgp4V2PeerLocalAddr}; + } +} + +sub check { + my ($self) = @_; + if ($self->opts->name2) { + foreach my $as (split(",", $self->opts->name2)) { + if ($as =~ /(\d+)=(\w+)/) { + $as = $1; + $self->{aristaBgp4V2PeerRemoteAsName} = ", ".$2; + } else { + $self->{aristaBgp4V2PeerRemoteAsName} = ""; + } + if ($as eq "_ALL_" || $as == $self->{aristaBgp4V2PeerRemoteAs}) { + $self->{aristaBgp4V2PeerRemoteAsImportant} = 1; + } + } + } else { + $self->{aristaBgp4V2PeerRemoteAsImportant} = 1; + } + if ($self->{aristaBgp4V2PeerState} eq "established") { + $self->add_ok(sprintf "peer %s (AS%s) state is %s since %s", + $self->{aristaBgp4V2PeerRemoteAddr}, + $self->{aristaBgp4V2PeerRemoteAs}.$self->{aristaBgp4V2PeerRemoteAsName}, + $self->{aristaBgp4V2PeerState}, + $self->{aristaBgp4V2PeerFsmEstablishedTime} + ); + } elsif ($self->{aristaBgp4V2PeerAdminStatus} eq "stop") { + # admin down is by default critical, but can be mitigated + $self->add_message( + defined $self->opts->mitigation() ? $self->opts->mitigation() : + $self->{aristaBgp4V2PeerRemoteAsImportant} ? WARNING : OK, + sprintf "peer %s (AS%s) state is %s (is admin down)", + $self->{aristaBgp4V2PeerRemoteAddr}, + $self->{aristaBgp4V2PeerRemoteAs}.$self->{aristaBgp4V2PeerRemoteAsName}, + $self->{aristaBgp4V2PeerState} + ); + $self->{aristaBgp4V2PeerFaulty} = + defined $self->opts->mitigation() && $self->opts->mitigation() eq "ok" ? 0 : + $self->{aristaBgp4V2PeerRemoteAsImportant} ? 1 : 0; + } else { + # aristaBgp4V2PeerLastError may be undef, at least under the following circumstances + # aristaBgp4V2PeerRemoteAsName is "", aristaBgp4V2PeerAdminStatus is "start", + # aristaBgp4V2PeerState is "active" + $self->add_message($self->{aristaBgp4V2PeerRemoteAsImportant} ? CRITICAL : OK, + sprintf "peer %s (AS%s) state is %s (last error: %s)", + $self->{aristaBgp4V2PeerRemoteAddr}, + $self->{aristaBgp4V2PeerRemoteAs}.$self->{aristaBgp4V2PeerRemoteAsName}, + $self->{aristaBgp4V2PeerState}, + $self->{aristaBgp4V2PeerLastError}||"no error" + ); + $self->{aristaBgp4V2PeerFaulty} = $self->{aristaBgp4V2PeerRemoteAsImportant} ? 1 : 0; + } +} + + diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Arista/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Arista/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Arista/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Arista/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/BGP.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/BGP.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/BGP.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/BGP.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/BGP/Component/PeerSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/BGP/Component/PeerSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/BGP/Component/PeerSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/BGP/Component/PeerSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Barracuda.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Barracuda.pm new file mode 100644 index 0000000..d6b60f3 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Barracuda.pm @@ -0,0 +1,24 @@ +package Classes::Barracuda; +our @ISA = qw(Classes::Device); +use strict; + + +sub init { + my ($self) = @_; + if ($self->mode =~ /device::hardware::health/) { + $self->analyze_and_check_environmental_subsystem("Classes::Barracuda::Component::EnvironmentalSubsystem"); + } elsif ($self->mode =~ /device::hardware::load/) { + $self->analyze_and_check_cpu_subsystem("Classes::UCDMIB::Component::CpuSubsystem"); + } elsif ($self->mode =~ /device::hardware::memory/) { + $self->analyze_and_check_mem_subsystem("Classes::UCDMIB::Component::MemSubsystem"); + } elsif ($self->mode =~ /device::fw::policy::connections/) { + $self->analyze_and_check_fw_subsystem("Classes::Barracuda::Component::FwSubsystem"); + } elsif ($self->mode =~ /device::ha::/) { + $self->analyze_and_check_fw_subsystem("Classes::Barracuda::Component::HaSubsystem"); + } else { + # Merkwuerdigerweise gibts ohne das hier einen Timeout bei + # IP-FORWARD-MIB::inetCidrRouteTable und den route-Modi + $self->mult_snmp_max_msg_size(5); + $self->no_such_mode(); + } +} diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Barracuda/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Barracuda/Component/EnvironmentalSubsystem.pm new file mode 100644 index 0000000..44ef364 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Barracuda/Component/EnvironmentalSubsystem.pm @@ -0,0 +1,167 @@ +package Classes::Barracuda::Component::EnvironmentalSubsystem; +our @ISA = qw(Monitoring::GLPlugin::SNMP::Item); +use strict; + +sub init { + my ($self) = @_; + $self->get_snmp_tables('PHION-MIB', [ + ['sensors', 'hwSensorsTable', 'Classes::Barracuda::Component::EnvironmentalSubsystem::Sensor'], + ['partitions', 'diskSpaceTable', 'Classes::Barracuda::Component::EnvironmentalSubsystem::Partition'], + ['raidevents', 'raidEventsTable', 'Classes::Barracuda::Component::EnvironmentalSubsystem::RaidEvent'], + ]); +} + + +package Classes::Barracuda::Component::EnvironmentalSubsystem::Sensor; +our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); +use strict; + +sub finish { + my ($self) = @_; + if ($self->{hwSensorType} eq "temperature") { + bless $self, "Classes::Barracuda::Component::EnvironmentalSubsystem::Sensor::Temp"; + $self->finish(); + } elsif ($self->{hwSensorType} eq "psu-status") { + bless $self, "Classes::Barracuda::Component::EnvironmentalSubsystem::Sensor::PS"; + $self->finish(); + } elsif ($self->{hwSensorType} eq "fan") { + bless $self, "Classes::Barracuda::Component::EnvironmentalSubsystem::Sensor::Fan"; + $self->finish(); + } +} + +package Classes::Barracuda::Component::EnvironmentalSubsystem::Sensor::PS; +our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); +use strict; + +sub finish { + my ($self) = @_; + $self->{hwSensorValue} = ($self->{hwSensorValue} == 1) ? "ok" : "failed"; +} + +sub check { + my ($self) = @_; + $self->add_info(sprintf '%s status is %s', + $self->{hwSensorName}, $self->{hwSensorValue}); + if ($self->{hwSensorValue} eq "ok") { + $self->add_ok(); + } else { + $self->add_critical(); + } +} + +package Classes::Barracuda::Component::EnvironmentalSubsystem::Sensor::Temp; +our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); +use strict; + +sub finish { + my ($self) = @_; + $self->{hwSensorValue} /= 1000; + $self->{name} = $self->{hwSensorName} =~ /temperature/i ? + $self->{hwSensorName} : $self->{hwSensorName}." Temperature"; + $self->{label} = lc $self->{hwSensorName}; + $self->{label} =~ s/Temperature//gi; + $self->{label} =~ s/^\s+//g; + $self->{label} =~ s/\s+$//g; + $self->{label} =~ s/\s+/_/g; + $self->{label} = "temp_".$self->{label}; +} + +sub check { + my ($self) = @_; + $self->add_info(sprintf '%s temperature is %.2fC', + $self->{hwSensorName}, $self->{hwSensorValue}); + $self->set_thresholds(metric => $self->{label}, + warning => 50, critical => 60 + ); + $self->add_message($self->check_thresholds( + metric => $self->{label}, + value => $self->{hwSensorValue}, + )); + $self->add_perfdata( + label => $self->{label}, + value => $self->{hwSensorValue}, + ); +} + +package Classes::Barracuda::Component::EnvironmentalSubsystem::Sensor::Fan; +our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); +use strict; + +sub finish { + my ($self) = @_; + $self->{name} = $self->{hwSensorName} =~ /fan/i ? + $self->{hwSensorName} : $self->{hwSensorName}." Fan"; + $self->{label} = lc $self->{hwSensorName}; + $self->{label} =~ s/Fan//gi; + $self->{label} =~ s/^\s+//g; + $self->{label} =~ s/\s+$//g; + $self->{label} =~ s/\s+/_/g; + $self->{label} = "fan_".$self->{label}; +} + +sub check { + my ($self) = @_; + $self->add_info(sprintf '%s rpm is %.2f', + $self->{hwSensorName}, $self->{hwSensorValue}); + $self->set_thresholds(metric => $self->{label}, + warning => "1000:5500", critical => "100:6000", + ); + $self->add_message($self->check_thresholds( + metric => $self->{label}, + value => $self->{hwSensorValue}, + )); + $self->add_perfdata( + label => $self->{label}, + value => $self->{hwSensorValue}, + ); +} + +package Classes::Barracuda::Component::EnvironmentalSubsystem::Partition; +our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); +use strict; + +sub finish { + my ($self) = @_; + $self->{label} = (lc $self->{partitionName})."_usage"; +} + +sub check { + my ($self) = @_; + $self->add_info(sprintf "partition %s usage is %.2f%%", + $self->{partitionName}, + $self->{partitionUsedSpacePercent} + ); + $self->set_thresholds(metric => $self->{label}, + warning => 80, critical => 90 + ); + $self->add_message($self->check_thresholds( + metric => $self->{label}, + value => $self->{partitionUsedSpacePercent}, + )); + $self->add_perfdata( + label => $self->{label}, + value => $self->{partitionUsedSpacePercent}, + uom => "%", + ); +} + + +package Classes::Barracuda::Component::EnvironmentalSubsystem::RaidEvent; +our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); +use strict; + +sub check { + my ($self) = @_; + $self->add_info(sprintf 'level %s raid event: %s at %s', + $self->{raidEventSev}, $self->{raidEventText}, $self->{raidEventTime}); + if ($self->{raidEventSev} eq "error") { + $self->add_critical(); + } elsif ($self->{raidEventSev} eq "warning") { + $self->add_warning(); + } elsif ($self->{raidEventSev} eq "unknown") { + $self->add_warning(); + } else { + $self->add_ok(); + } +} diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Barracuda/Component/FwSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Barracuda/Component/FwSubsystem.pm new file mode 100644 index 0000000..9c48ad6 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Barracuda/Component/FwSubsystem.pm @@ -0,0 +1,30 @@ +package Classes::Barracuda::Component::FwSubsystem; +our @ISA = qw(Monitoring::GLPlugin::SNMP::Item); +use strict; + +sub init { + my ($self) = @_; + if ($self->mode =~ /device::fw::policy::connections/) { + $self->get_snmp_tables('PHION-MIB', [ + ['fwstats', 'fwStatsTable', 'Classes::Barracuda::Component::FwSubsystem::FWStat'], + ]); + $self->get_snmp_objects('PHION-MIB', qw(vpnUsers)); + } +} + + +package Classes::Barracuda::Component::FwSubsystem::FWStat; +our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); +use strict; + +sub check { + my ($self) = @_; + $self->set_thresholds(warning => 300000, critical => 400000); + $self->add_message($self->check_thresholds($self->{firewallSessions64}), + sprintf 'fw has %s open sessions', $self->{firewallSessions64}); + $self->add_perfdata( + label => 'fw_sessions', + value => $self->{firewallSessions64}, + ); +} + diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Barracuda/Component/HaSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Barracuda/Component/HaSubsystem.pm new file mode 100644 index 0000000..c91a2b3 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Barracuda/Component/HaSubsystem.pm @@ -0,0 +1,65 @@ +package Classes::Barracuda::Component::HaSubsystem; +our @ISA = qw(Monitoring::GLPlugin::SNMP::Item); +use strict; +use constant { OK => 0, WARNING => 1, CRITICAL => 2, UNKNOWN => 3 }; + +sub init { + my ($self) = @_; + if ($self->mode =~ /device::ha::role/) { + $self->get_snmp_tables('PHION-MIB', [ + ['services', 'serverServicesTable', 'Classes::Barracuda::Component::HaSubsystem::Service'], + ]); + if (! $self->opts->role()) { + $self->opts->override_opt('role', 'active'); + } + } +} + +sub check { + my ($self) = @_; + $self->SUPER::check(); + printf "info %s\n", $self->get_info(); + if (! grep { $_->{serverServiceName} eq "SE1FWEXT_FWEXT" } + @{$self->{services}}) { + $self->add_unknown("no service SE1FWEXT_FWEXT found"); + } else { + printf "troet\n"; + } +} + + +package Classes::Barracuda::Component::HaSubsystem::Service; +our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); +use strict; + +sub check { + my ($self) = @_; + if ($self->mode =~ /device::ha::role/) { + if ($self->{serverServiceName} eq "SE1FWEXT_FWEXT") { + $self->add_info(sprintf "%s node, service %s is %s", + $self->opts->role(), $self->{serverServiceName}, + $self->{serverServiceState}); + if ($self->opts->role() eq "active") { + if ($self->{serverServiceState} eq "started") { + $self->add_ok(); + } elsif ($self->{serverServiceState} eq "stopped") { + $self->add_warning(); + } elsif ($self->{serverServiceState} eq "blocked") { + $self->add_critical(); + } else { + $self->add_unknown(); + } + } else { + if ($self->{serverServiceState} eq "stopped") { + $self->add_ok(); + } elsif ($self->{serverServiceState} eq "started") { + $self->add_warning(); + } elsif ($self->{serverServiceState} eq "blocked") { + $self->add_critical(); + } else { + $self->add_unknown(); + } + } + } + } +} diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Bintec.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Bintec.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Bintec.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Bintec.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Bintec/Bibo.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Bintec/Bibo.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Bintec/Bibo.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Bintec/Bibo.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Bintec/Bibo/Components/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Bintec/Bibo/Components/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Bintec/Bibo/Components/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Bintec/Bibo/Components/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Bintec/Bibo/Components/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Bintec/Bibo/Components/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Bintec/Bibo/Components/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Bintec/Bibo/Components/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Bintec/Bibo/Components/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Bintec/Bibo/Components/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Bintec/Bibo/Components/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Bintec/Bibo/Components/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Bluecoat.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Bluecoat.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Bluecoat.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Bluecoat.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Brocade.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Brocade.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Brocade.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Brocade.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/DiskSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/DiskSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/DiskSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/DiskSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/FanSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/FanSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/FanSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/FanSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/FwSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/FwSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/FwSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/FwSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/HaSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/HaSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/HaSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/HaSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/MngmtSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/MngmtSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/MngmtSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/MngmtSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/PowersupplySubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/PowersupplySubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/PowersupplySubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/PowersupplySubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/SvnSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/SvnSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/SvnSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/SvnSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/TemperatureSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/TemperatureSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/TemperatureSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/TemperatureSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/VoltageSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/VoltageSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/VoltageSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/VoltageSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/VpnSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/VpnSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Firewall1/Component/VpnSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Firewall1/Component/VpnSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Gaia.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Gaia.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/Gaia.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/Gaia.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/VSX.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/VSX.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/VSX.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/VSX.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/VSX/Component/FwSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/VSX/Component/FwSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/CheckPoint/VSX/Component/FwSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/CheckPoint/VSX/Component/FwSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco.pm similarity index 73% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco.pm index 40bf668..0114886 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco.pm @@ -31,7 +31,26 @@ sub init { $self->rebless('Classes::Cisco::SB'); } if (ref($self) ne "Classes::Cisco") { - if ($self->mode =~ /device::interfaces::etherstats/) { + if ($self->mode =~ /device::bgp/) { + if ($self->implements_mib('CISCO-BGP4-MIB', 'cbgpPeer2Table')) { + $self->analyze_and_check_interface_subsystem("Classes::Cisco::CISCOBGP4MIB::Component::PeerSubsystem"); + } else { + $self->establish_snmp_secondary_session(); + if ($self->implements_mib('CISCO-BGP4-MIB', 'cbgpPeer2Table')) { + $self->analyze_and_check_interface_subsystem("Classes::Cisco::CISCOBGP4MIB::Component::PeerSubsystem"); + } else { + $self->establish_snmp_session(); + $self->debug("no CISCO-BGP4-MIB and/or no cbgpPeer2Table, fallback"); + $self->no_such_mode(); + } + } + } elsif ($self->mode =~ /device::eigrp/) { + if ($self->implements_mib('CISCO-EIGRP-MIB')) { + $self->analyze_and_check_interface_subsystem("Classes::Cisco::EIGRPMIB::Component::PeerSubsystem"); + } else { + $self->no_such_mode(); + } + } elsif ($self->mode =~ /device::interfaces::etherstats/) { if ($self->implements_mib('OLD-CISCO-INTERFACES-MIB')) { $self->analyze_and_check_interface_subsystem("Classes::Cisco::OLDCISCOINTERFACESMIB::Component::InterfaceSubsystem"); } else { diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/ASA.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/ASA.pm similarity index 71% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/ASA.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/ASA.pm index 417bcaa..52fab0b 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/ASA.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/ASA.pm @@ -14,7 +14,14 @@ sub init { $self->analyze_and_check_mem_subsystem("Classes::Cisco::IOS::Component::MemSubsystem"); } elsif ($self->mode =~ /device::hsrp/) { $self->analyze_and_check_hsrp_subsystem("Classes::HSRP::Component::HSRPSubsystem"); - } elsif ($self->mode =~ /device::users/) { + } elsif ($self->mode =~ /device::users/ || $self->mode =~ /device::connections/) { + # das war frueher "users". seit 6c70c2627e53cce991181369456c03f630f90f71 + # ist count-connections kein alias von count-users mehr, sondern ein + # eigenstaendiger mode. fuehrte dazu, dass count-connections hier unten + # in no_such_mode reinlief. daher dieses users||connections. + # weil es sich bei asa tatsaechlich eher um connections als users handelt, + # waere es sauber, das users rauszuwerfen, allerdings wuerde das dann + # bei denen krachen, die count-users verwenden. $self->analyze_and_check_connection_subsystem("Classes::Cisco::IOS::Component::ConnectionSubsystem"); } elsif ($self->mode =~ /device::config/) { $self->analyze_and_check_config_subsystem("Classes::Cisco::IOS::Component::ConfigSubsystem"); @@ -24,6 +31,8 @@ sub init { $self->analyze_and_check_config_subsystem("Classes::Cisco::IOS::Component::NatSubsystem"); } elsif ($self->mode =~ /device::vpn::status/) { $self->analyze_and_check_config_subsystem("Classes::Cisco::CISCOIPSECFLOWMONITOR::Component::VpnSubsystem"); + } elsif ($self->mode =~ /device::vpn::sessions/) { + $self->analyze_and_check_config_subsystem("Classes::Cisco::CISCOREMOTEACCESSMONITORMIB::Component::VpnSubsystem"); } elsif ($self->mode =~ /device::ha::role/) { $self->analyze_and_check_config_subsystem("Classes::Cisco::IOS::Component::HaSubsystem"); } else { diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/AsyncOS.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/AsyncOS.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/AsyncOS.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/AsyncOS.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/AsyncOS/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/AsyncOS/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/AsyncOS/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/AsyncOS/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/AsyncOS/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/AsyncOS/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/AsyncOS/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/AsyncOS/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/AsyncOS/Component/FanSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/AsyncOS/Component/FanSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/AsyncOS/Component/FanSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/AsyncOS/Component/FanSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/AsyncOS/Component/KeySubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/AsyncOS/Component/KeySubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/AsyncOS/Component/KeySubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/AsyncOS/Component/KeySubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/AsyncOS/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/AsyncOS/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/AsyncOS/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/AsyncOS/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/AsyncOS/Component/PowersupplySubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/AsyncOS/Component/PowersupplySubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/AsyncOS/Component/PowersupplySubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/AsyncOS/Component/PowersupplySubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/AsyncOS/Component/RaidSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/AsyncOS/Component/RaidSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/AsyncOS/Component/RaidSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/AsyncOS/Component/RaidSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/AsyncOS/Component/TemperatureSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/AsyncOS/Component/TemperatureSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/AsyncOS/Component/TemperatureSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/AsyncOS/Component/TemperatureSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CCM.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CCM.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CCM.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CCM.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CCM/Component/CmSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CCM/Component/CmSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CCM/Component/CmSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CCM/Component/CmSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CCM/Component/PhoneSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CCM/Component/PhoneSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CCM/Component/PhoneSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CCM/Component/PhoneSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOBGP4MIB/Components/PeerSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOBGP4MIB/Components/PeerSubsystem.pm new file mode 100644 index 0000000..5c80e99 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOBGP4MIB/Components/PeerSubsystem.pm @@ -0,0 +1,322 @@ +package Classes::Cisco::CISCOBGP4MIB::Component::PeerSubsystem; +our @ISA = qw(Monitoring::GLPlugin::SNMP::Item); +use strict; + +our $errorcodes = { + # REFERENCE "RFC 4271, Section 4.5." + 0 => { + 0 => 'No Error', + }, + 1 => { + 0 => 'MESSAGE Header Error', + 1 => 'Connection Not Synchronized', + 2 => 'Bad Message Length', + 3 => 'Bad Message Type', + }, + 2 => { + 0 => 'OPEN Message Error', + 1 => 'Unsupported Version Number', + 2 => 'Bad Peer AS', + 3 => 'Bad BGP Identifier', + 4 => 'Unsupported Optional Parameter', + 5 => '[Deprecated => see Appendix A]', + 6 => 'Unacceptable Hold Time', + }, + 3 => { + 0 => 'UPDATE Message Error', + 1 => 'Malformed Attribute List', + 2 => 'Unrecognized Well-known Attribute', + 3 => 'Missing Well-known Attribute', + 4 => 'Attribute Flags Error', + 5 => 'Attribute Length Error', + 6 => 'Invalid ORIGIN Attribute', + 7 => '[Deprecated => see Appendix A]', + 8 => 'Invalid NEXT_HOP Attribute', + 9 => 'Optional Attribute Error', + 10 => 'Invalid Network Field', + 11 => 'Malformed AS_PATH', + }, + 4 => { + 0 => 'Hold Timer Expired', + }, + 5 => { + 0 => 'Finite State Machine Error', + }, + 6 => { + 0 => 'Cease', + 1 => 'Maximum Number of Prefixes Reached', + 2 => 'Administrative Shutdown', + 3 => 'Peer De-configured', + 4 => 'Administrative Reset', + 5 => 'Connection Rejected', + 6 => 'Other Configuration Change', + 7 => 'Connection Collision Resolution', + 8 => 'Out of Resources', + }, +}; + +sub init { + my ($self) = @_; + $self->{peers} = []; + $self->implements_mib('INET-ADDRESS-MIB'); + $self->get_snmp_tables('CISCO-BGP4-MIB', [ + ['peers', 'cbgpPeer2Table', 'Classes::Cisco::CISCOBGP4MIB::Component::PeerSubsystem::Peer2', sub { + my $o = shift; + # regexp -> arschlecken! + if ($self->opts->name) { + return $self->filter_name($o->compact_v6($o->{cbgpPeer2RemoteAddr})); + } else { + return 1; + } + }], + ]); +return; + if ($self->mode =~ /device::bgp::peer::(list|count|watch)/) { + $self->update_entry_cache(1, 'BGP4-MIB', 'bgpPeerTable', 'cbgpPeer2RemoteAddr'); + } + foreach ($self->get_snmp_table_objects_with_cache( + 'BGP4-MIB', 'bgpPeerTable', 'cbgpPeer2RemoteAddr')) { + if ($self->filter_name($_->{cbgpPeer2RemoteAddr})) { + push(@{$self->{peers}}, + Classes::BGP::Component::PeerSubsystem::Peer->new(%{$_})); + } + } +} + +sub check { + my ($self) = @_; + my $errorfound = 0; + $self->add_info('checking bgp peers'); + if ($self->mode =~ /peer::list/) { + foreach (sort {$a->{cbgpPeer2RemoteAddr} cmp $b->{cbgpPeer2RemoteAddr}} @{$self->{peers}}) { + printf "%s\n", $_->{cbgpPeer2RemoteAddr}; + #$_->list(); + } + $self->add_ok("have fun"); + } elsif ($self->mode =~ /peer::count/) { + $self->add_info(sprintf "found %d peers", scalar(@{$self->{peers}})); + $self->set_thresholds(warning => '1:', critical => '1:'); + $self->add_message($self->check_thresholds(scalar(@{$self->{peers}}))); + $self->add_perfdata( + label => 'peers', + value => scalar(@{$self->{peers}}), + ); + } elsif ($self->mode =~ /peer::watch/) { + # take a snapshot of the peer list. -> good baseline + # warning if there appear peers, mitigate to ok + # critical if warn/crit percent disappear + $self->{numOfPeers} = scalar (@{$self->{peers}}); + $self->{peerNameList} = [map { $_->{cbgpPeer2RemoteAddr} } @{$self->{peers}}]; + $self->opts->override_opt('lookback', 3600) if ! $self->opts->lookback; + if ($self->opts->reset) { + my $statefile = $self->create_statefile(name => 'bgppeerlist', lastarray => 1); + unlink $statefile if -f $statefile; + } + $self->valdiff({name => 'bgppeerlist', lastarray => 1}, + qw(peerNameList numOfPeers)); + my $problem = 0; + if ($self->opts->warning || $self->opts->critical) { + $self->set_thresholds(warning => $self->opts->warning, + critical => $self->opts->critical); + my $before = $self->{numOfPeers} - scalar(@{$self->{delta_found_peerNameList}}) + scalar(@{$self->{delta_lost_peerNameList}}); + # use own delta_numOfPeers, because the glplugin version treats + # negative deltas as overflows + $self->{delta_numOfPeers} = $self->{numOfPeers} - $before; + if ($self->opts->units && $self->opts->units eq "%") { + my $delta_pct = $before ? (($self->{delta_numOfPeers} / $before) * 100) : 0; + $self->add_message($self->check_thresholds($delta_pct), + sprintf "%.2f%% delta, before: %d, now: %d", $delta_pct, $before, $self->{numOfPeers}); + $problem = $self->check_thresholds($delta_pct); + } else { + $self->add_message($self->check_thresholds($self->{delta_numOfPeers}), + sprintf "%d delta, before: %d, now: %d", $self->{delta_numOfPeers}, $before, $self->{numOfPeers}); + $problem = $self->check_thresholds($self->{delta_numOfPeers}); + } + if (scalar(@{$self->{delta_found_peerNameList}}) > 0) { + $self->add_ok(sprintf 'found: %s', + join(", ", @{$self->{delta_found_peerNameList}})); + } + if (scalar(@{$self->{delta_lost_peerNameList}}) > 0) { + $self->add_ok(sprintf 'lost: %s', + join(", ", @{$self->{delta_lost_peerNameList}})); + } + } else { + if (scalar(@{$self->{delta_found_peerNameList}}) > 0) { + $self->add_warning(sprintf '%d new bgp peers (%s)', + scalar(@{$self->{delta_found_peerNameList}}), + join(", ", @{$self->{delta_found_peerNameList}})); + $problem = 1; + } + if (scalar(@{$self->{delta_lost_peerNameList}}) > 0) { + $self->add_critical(sprintf '%d bgp peers missing (%s)', + scalar(@{$self->{delta_lost_peerNameList}}), + join(", ", @{$self->{delta_lost_peerNameList}})); + $problem = 2; + } + $self->add_ok(sprintf 'found %d bgp peers', scalar (@{$self->{peers}})); + } + if ($problem) { # relevant only for lookback=9999 and support contract customers + $self->valdiff({name => 'bgppeerlist', lastarray => 1, freeze => 1}, + qw(peerNameList numOfPeers)); + } else { + $self->valdiff({name => 'bgppeerlist', lastarray => 1, freeze => 2}, + qw(peerNameList numOfPeers)); + } + $self->add_perfdata( + label => 'num_peers', + value => scalar (@{$self->{peers}}), + ); + } else { + if (scalar(@{$self->{peers}}) == 0) { + $self->add_unknown('no peers'); + return; + } + # es gibt + # kleine installation: 1 peer zu 1 as, evt 2. as als fallback + # grosse installation: n peer zu 1 as, alternative routen zum provider + # n peer zu m as, mehrere provider, mehrere alternativrouten + # 1 ausfall on 4 peers zu as ist egal + my $as_numbers = {}; + foreach (@{$self->{peers}}) { + $_->check(); + if (! exists $as_numbers->{$_->{cbgpPeer2RemoteAs}}->{peers}) { + $as_numbers->{$_->{cbgpPeer2RemoteAs}}->{peers} = []; + $as_numbers->{$_->{cbgpPeer2RemoteAs}}->{availability} = 100; + } + push(@{$as_numbers->{$_->{cbgpPeer2RemoteAs}}->{peers}}, $_); + } + if ($self->opts->name2) { + $self->clear_ok(); + $self->clear_critical(); + if ($self->opts->name2 eq "_ALL_") { + $self->opts->override_opt("name2", join(",", keys %{$as_numbers})); + } + foreach my $as (split(",", $self->opts->name2)) { + my $asname = ""; + if ($as =~ /(\d+)=(\w+)/) { + $as = $1; + $asname = $2; + } + if (exists $as_numbers->{$as}) { + my $num_peers = scalar(@{$as_numbers->{$as}->{peers}}); + my $num_ok_peers = scalar(grep { $_->{cbgpPeer2Faulty} == 0 } @{$as_numbers->{$as}->{peers}}); + my $num_admdown_peers = scalar(grep { $_->{cbgpPeer2AdminStatus} eq "stop" } @{$as_numbers->{$as}->{peers}}); + $as_numbers->{$as}->{availability} = 100 * $num_ok_peers / $num_peers; + $self->set_thresholds(warning => "100:", critical => "50:"); + $self->add_message($self->check_thresholds($as_numbers->{$as}->{availability}), + sprintf "%d from %d connections to %s are up (%.2f%%%s)", + $num_ok_peers, $num_peers, $asname ? $asname : "AS".$as, + $as_numbers->{$as}->{availability}, + $num_admdown_peers ? sprintf(", but %d are admin down and counted as up!", $num_admdown_peers) : ""); + } else { + $self->add_critical(sprintf 'found no peer for %s', $asname ? $asname : "AS".$as); + } + } + } + if ($self->opts->report eq "short") { + $self->clear_ok(); + $self->add_ok('no problems') if ! $self->check_messages(); + } + } +} + + +package Classes::Cisco::CISCOBGP4MIB::Component::PeerSubsystem::Peer2; +our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); +use strict; +use constant { OK => 0, WARNING => 1, CRITICAL => 2, UNKNOWN => 3 }; + +sub finish { + my ($self) = @_; + my @tmp_indices = @{$self->{indices}}; + my $last_tmp = scalar(@tmp_indices) - 1; + $self->{cbgpPeer2Type} = $self->mibs_and_oids_definition( + 'INET-ADDRESS-MIB', 'InetAddressType', $tmp_indices[0]); + shift @tmp_indices; + + $self->{cbgpPeer2RemoteAddr} = $self->mibs_and_oids_definition( + 'INET-ADDRESS-MIB', 'InetAddressMaker', + $self->{cbgpPeer2Type}, @tmp_indices); + + # cbgpPeer2LocalAddr kann ein Leerstring sein + $self->{cbgpPeer2LocalAddr} = $self->mibs_and_oids_definition( + 'INET-ADDRESS-MIB', 'InetAddress', + $self->{cbgpPeer2LocalAddr}, $self->{cbgpPeer2Type}) if $self->{cbgpPeer2LocalAddr}; + $self->{cbgpPeer2LocalAddr} = "999.999.999.999" if ! $self->{cbgpPeer2LocalAddr}; + + $self->{cbgpPeer2LastError} |= "00 00"; + my $errorcode = 0; + my $subcode = 0; + if (lc $self->{cbgpPeer2LastError} =~ /([0-9a-f]+)\s+([0-9a-f]+)/) { + $errorcode = hex($1) * 1; + $subcode = hex($2) * 1; + } + $self->{cbgpPeer2LastError} = $Classes::Cisco::CISCOBGP4MIB::Component::PeerSubsystem::errorcodes->{$errorcode}->{$subcode}; + $self->{cbgpPeer2RemoteAsName} = ""; + $self->{cbgpPeer2RemoteAsImportant} = 0; # if named in --name2 + $self->{cbgpPeer2Faulty} = 0; + my @parts = gmtime($self->{cbgpPeer2FsmEstablishedTime}); + $self->{cbgpPeer2FsmEstablishedTime} = sprintf ("%dd, %dh, %dm, %ds",@parts[7,2,1,0]); + + if ($self->{cbgpPeer2Type} eq "ipv6") { + $self->{cbgpPeer2RemoteAddrCompact} = $self->compact_v6($self->{cbgpPeer2RemoteAddr}); + $self->{cbgpPeer2LocalAddrCompact} = $self->compact_v6($self->{cbgpPeer2LocalAddr}); + } else { + $self->{cbgpPeer2RemoteAddrCompact} = $self->{cbgpPeer2RemoteAddr}; + $self->{cbgpPeer2LocalAddrCompact} = $self->{cbgpPeer2LocalAddr}; + } +} + +sub check { + my ($self) = @_; + if ($self->opts->name2) { + foreach my $as (split(",", $self->opts->name2)) { + if ($as =~ /(\d+)=(\w+)/) { + $as = $1; + $self->{cbgpPeer2RemoteAsName} = ", ".$2; + } else { + $self->{cbgpPeer2RemoteAsName} = ""; + } + if ($as eq "_ALL_" || $as == $self->{cbgpPeer2RemoteAs}) { + $self->{cbgpPeer2RemoteAsImportant} = 1; + } + } + } else { + $self->{cbgpPeer2RemoteAsImportant} = 1; + } + if ($self->{cbgpPeer2State} eq "established") { + $self->add_ok(sprintf "peer %s (AS%s) state is %s since %s", + $self->{cbgpPeer2RemoteAddr}, + $self->{cbgpPeer2RemoteAs}.$self->{cbgpPeer2RemoteAsName}, + $self->{cbgpPeer2State}, + $self->{cbgpPeer2FsmEstablishedTime} + ); + } elsif ($self->{cbgpPeer2AdminStatus} eq "stop") { + # admin down is by default critical, but can be mitigated + $self->add_message( + defined $self->opts->mitigation() ? $self->opts->mitigation() : + $self->{cbgpPeer2RemoteAsImportant} ? WARNING : OK, + sprintf "peer %s (AS%s) state is %s (is admin down)", + $self->{cbgpPeer2RemoteAddr}, + $self->{cbgpPeer2RemoteAs}.$self->{cbgpPeer2RemoteAsName}, + $self->{cbgpPeer2State} + ); + $self->{cbgpPeer2Faulty} = + defined $self->opts->mitigation() && $self->opts->mitigation() eq "ok" ? 0 : + $self->{cbgpPeer2RemoteAsImportant} ? 1 : 0; + } else { + # cbgpPeer2LastError may be undef, at least under the following circumstances + # cbgpPeer2RemoteAsName is "", cbgpPeer2AdminStatus is "start", + # cbgpPeer2State is "active" + $self->add_message($self->{cbgpPeer2RemoteAsImportant} ? CRITICAL : OK, + sprintf "peer %s (AS%s) state is %s (last error: %s)", + $self->{cbgpPeer2RemoteAddr}, + $self->{cbgpPeer2RemoteAs}.$self->{cbgpPeer2RemoteAsName}, + $self->{cbgpPeer2State}, + $self->{cbgpPeer2LastError}||"no error" + ); + $self->{cbgpPeer2Faulty} = $self->{cbgpPeer2RemoteAsImportant} ? 1 : 0; + } +} + + diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOEIGRPMIB/Components/PeerSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOEIGRPMIB/Components/PeerSubsystem.pm new file mode 100644 index 0000000..4f66226 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOEIGRPMIB/Components/PeerSubsystem.pm @@ -0,0 +1,159 @@ +package Classes::Cisco::EIGRPMIB::Component::PeerSubsystem; +our @ISA = qw(Monitoring::GLPlugin::SNMP::Item); +use strict; + +sub init { + my ($self) = @_; + $self->get_snmp_tables('CISCO-EIGRP-MIB', [ + ['vpns', 'cEigrpVpnTable', 'Classes::Cisco::EIGRPMIB::Component::PeerSubsystem::Vpn'], + ['peers', 'cEigrpPeerTable', 'Classes::Cisco::EIGRPMIB::Component::PeerSubsystem::Peer', sub { my ($o) = @_; return $self->filter_name($o->{cEigrpPeerAddr}) }], + ['stats', 'cEigrpTraffStatsTable', 'Classes::Cisco::EIGRPMIB::Component::PeerSubsystem::TrafficStats', sub { my ($o) = @_; return $self->filter_name2($o->{cEigrpAsRouterId}) }], + ]); + if ($self->opts->name2 && scalar(@{$self->{stats}}) == 0) { + # all stats have been filtered out + $self->{peers} = []; + } + $self->merge_tables_with_code('peers', 'vpns', sub { + my ($peer, $vpn) = @_; + return ($peer->{cEigrpVpnId} == $vpn->{cEigrpVpnId}) ? 1 : 0; + }); + $self->merge_tables_with_code('peers', 'stats', sub { + my ($peer, $stat) = @_; + return ($peer->{cEigrpVpnId} == $stat->{cEigrpVpnId} && + $peer->{cEigrpAsNumber} == $stat->{cEigrpAsNumber}) ? 1 : 0; + }); +} + +sub check { + my ($self) = @_; + if ($self->mode =~ /device::eigrp::peer::list/) { + foreach (@{$self->{peers}}) { + printf "%s (vpn %s, as %d, routerid %s) up since %s\n", + $_->{cEigrpPeerAddr}, $_->{cEigrpVpnName}, $_->{cEigrpAsNumber}, + $_->{cEigrpAsRouterId}, $_->human_timeticks($_->{cEigrpUpTime}); + } + $self->add_ok("have fun"); + } elsif ($self->mode =~ /peer::status/) { + if (scalar(@{$self->{peers}}) == 0) { + $self->add_critical("no peer(s) found"); + } else { + map { $_->check(); } @{$self->{peers}}; + } + } elsif ($self->mode =~ /peer::count/) { + $self->add_info(sprintf "found %d peers", scalar(@{$self->{peers}})); + $self->set_thresholds(warning => '1:', critical => '1:'); + $self->add_message($self->check_thresholds(scalar(@{$self->{peers}}))); + $self->add_perfdata( + label => 'peers', + value => scalar(@{$self->{peers}}), + ); + } elsif ($self->mode =~ /peer::watch/) { + # take a snapshot of the peer list. -> good baseline + # warning if there appear peers, mitigate to ok + # critical if warn/crit percent disappear + $self->{numOfPeers} = scalar (@{$self->{peers}}); + $self->{peerNameList} = [map { $_->{cEigrpPeerAddr} } @{$self->{peers}}]; + $self->opts->override_opt('lookback', 3600) if ! $self->opts->lookback; + if ($self->opts->reset) { + my $statefile = $self->create_statefile(name => 'eigrppeerlist', lastarray => 1); + unlink $statefile if -f $statefile; + } + $self->valdiff({name => 'eigrppeerlist', lastarray => 1}, + qw(peerNameList numOfPeers)); + my $problem = 0; + if ($self->opts->warning || $self->opts->critical) { + $self->set_thresholds(warning => $self->opts->warning, + critical => $self->opts->critical); + my $before = $self->{numOfPeers} - scalar(@{$self->{delta_found_peerNameList}}) + scalar(@{$self->{delta_lost_peerNameList}}); + # use own delta_numOfPeers, because the glplugin version treats + # negative deltas as overflows + $self->{delta_numOfPeers} = $self->{numOfPeers} - $before; + if ($self->opts->units && $self->opts->units eq "%") { + my $delta_pct = $before ? (($self->{delta_numOfPeers} / $before) * 100) : 0; + $self->add_message($self->check_thresholds($delta_pct), + sprintf "%.2f%% delta, before: %d, now: %d", $delta_pct, $before, $self->{numOfPeers}); + $problem = $self->check_thresholds($delta_pct); + } else { + $self->add_message($self->check_thresholds($self->{delta_numOfPeers}), + sprintf "%d delta, before: %d, now: %d", $self->{delta_numOfPeers}, $before, $self->{numOfPeers}); + $problem = $self->check_thresholds($self->{delta_numOfPeers}); + } + if (scalar(@{$self->{delta_found_peerNameList}}) > 0) { + $self->add_ok(sprintf 'found: %s', + join(", ", @{$self->{delta_found_peerNameList}})); + } + if (scalar(@{$self->{delta_lost_peerNameList}}) > 0) { + $self->add_ok(sprintf 'lost: %s', + join(", ", @{$self->{delta_lost_peerNameList}})); + } + } else { + if (scalar(@{$self->{delta_found_peerNameList}}) > 0) { + $self->add_warning(sprintf '%d new eigrp peers (%s)', + scalar(@{$self->{delta_found_peerNameList}}), + join(", ", @{$self->{delta_found_peerNameList}})); + $problem = 1; + } + if (scalar(@{$self->{delta_lost_peerNameList}}) > 0) { + $self->add_critical(sprintf '%d eigrp peers missing (%s)', + scalar(@{$self->{delta_lost_peerNameList}}), + join(", ", @{$self->{delta_lost_peerNameList}})); + $problem = 2; + } + $self->add_ok(sprintf 'found %d eigrp peers', scalar (@{$self->{peers}})); + } + if ($problem) { # relevant only for lookback=9999 and support contract customers + $self->valdiff({name => 'eigrppeerlist', lastarray => 1, freeze => 1}, + qw(peerNameList numOfPeers)); + } else { + $self->valdiff({name => 'eigrppeerlist', lastarray => 1, freeze => 2}, + qw(peerNameList numOfPeers)); + } + $self->add_perfdata( + label => 'num_peers', + value => scalar (@{$self->{peers}}), + ); + } +} + + +package Classes::Cisco::EIGRPMIB::Component::PeerSubsystem::TrafficStats; +our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); +use strict; + +sub finish { + my ($self) = @_; + $self->{cEigrpVpnId} = $self->{indices}->[0]; + $self->{cEigrpAsNumber} = $self->{indices}->[1]; +} + + +package Classes::Cisco::EIGRPMIB::Component::PeerSubsystem::Vpn; +our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); +use strict; + +sub finish { + my ($self) = @_; + $self->{cEigrpVpnId} = $self->{indices}->[0]; +} + + +package Classes::Cisco::EIGRPMIB::Component::PeerSubsystem::Peer; +our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); +use strict; + +sub finish { + my ($self) = @_; + $self->{cEigrpVpnId} = $self->{indices}->[0]; + $self->{cEigrpAsNumber} = $self->{indices}->[1]; + $self->{cEigrpHandle} = $self->{indices}->[2]; +} + +sub check { + my ($self) = @_; + $self->add_info(sprintf "%s (vpn %s, as %d, routerid %s) up since %s\n", + $_->{cEigrpPeerAddr}, $_->{cEigrpVpnName}, $_->{cEigrpAsNumber}, + $_->{cEigrpAsRouterId}, $_->human_timeticks($_->{cEigrpUpTime})); + # there is no status oid + $self->add_ok(); +} + diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENHANCEDMEMPOOLMIB/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENHANCEDMEMPOOLMIB/Component/MemSubsystem.pm similarity index 89% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENHANCEDMEMPOOLMIB/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENHANCEDMEMPOOLMIB/Component/MemSubsystem.pm index 4b938fc..984bd58 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENHANCEDMEMPOOLMIB/Component/MemSubsystem.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENHANCEDMEMPOOLMIB/Component/MemSubsystem.pm @@ -16,8 +16,15 @@ use strict; sub finish { my ($self) = @_; if (defined $self->{cempMemPoolHCUsed}) { - $self->{usage} = 100 * $self->{cempMemPoolHCUsed} / - ($self->{cempMemPoolHCFree} + $self->{cempMemPoolHCUsed}); + if ($self->{cempMemPoolHCFree} + $self->{cempMemPoolHCUsed} == 0) { + # sowas hier: + # cempMemPoolType: reservedMemory + # cempMemPoolName: reserved + $self->{usage} = 0; + } else { + $self->{usage} = 100 * $self->{cempMemPoolHCUsed} / + ($self->{cempMemPoolHCFree} + $self->{cempMemPoolHCUsed}); + } } else { # there was a posixMemory with used=0, free=0 # (= heap mem for posix-like processes in modular ios) diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENTITYALARMMIB/Component/AlarmSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENTITYALARMMIB/Component/AlarmSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENTITYALARMMIB/Component/AlarmSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENTITYALARMMIB/Component/AlarmSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENTITYFRUCONTROLMIB/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENTITYFRUCONTROLMIB/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENTITYFRUCONTROLMIB/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENTITYFRUCONTROLMIB/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENTITYFRUCONTROLMIB/Component/FanSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENTITYFRUCONTROLMIB/Component/FanSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENTITYFRUCONTROLMIB/Component/FanSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENTITYFRUCONTROLMIB/Component/FanSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENTITYFRUCONTROLMIB/Component/ModuleSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENTITYFRUCONTROLMIB/Component/ModuleSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENTITYFRUCONTROLMIB/Component/ModuleSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENTITYFRUCONTROLMIB/Component/ModuleSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENTITYFRUCONTROLMIB/Component/PowersupplySubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENTITYFRUCONTROLMIB/Component/PowersupplySubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENTITYFRUCONTROLMIB/Component/PowersupplySubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENTITYFRUCONTROLMIB/Component/PowersupplySubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENTITYSENSORMIB/Component/SensorSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENTITYSENSORMIB/Component/SensorSubsystem.pm similarity index 94% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENTITYSENSORMIB/Component/SensorSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENTITYSENSORMIB/Component/SensorSubsystem.pm index aa50fb8..8f4ac36 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENTITYSENSORMIB/Component/SensorSubsystem.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENTITYSENSORMIB/Component/SensorSubsystem.pm @@ -5,12 +5,17 @@ use strict; sub init { my ($self) = @_; my $sensors = {}; + # Wenn Kunden Filialen in Australien aufmachen, dann muss man zu + # brachialen Massnahmen greifen. + # Derart hohe Werte koennen zu merkwuerdigen Fehlern fuehren, aber + # get_entries_get_bulk wird's schon richten. + $self->bulk_is_baeh(128); $self->get_snmp_tables('CISCO-ENTITY-SENSOR-MIB', [ - ['sensors', 'entSensorValueTable', 'Classes::Cisco::CISCOENTITYSENSORMIB::Component::SensorSubsystem::Sensor', sub { my ($o) = @_; $self->filter_name($o->{entPhysicalIndex})}], - ['thresholds', 'entSensorThresholdTable', 'Classes::Cisco::CISCOENTITYSENSORMIB::Component::SensorSubsystem::SensorThreshold'], + ['sensors', 'entSensorValueTable', 'Classes::Cisco::CISCOENTITYSENSORMIB::Component::SensorSubsystem::Sensor', sub { my ($o) = @_; $self->filter_name($o->{entPhysicalIndex})}, ["entSensorType", "entSensorStatus", "entSensorValue", "entSensorMeasuredEntity"]], + ['thresholds', 'entSensorThresholdTable', 'Classes::Cisco::CISCOENTITYSENSORMIB::Component::SensorSubsystem::SensorThreshold', undef, ["entSensorThresholdSeverity", "entSensorThresholdValue", "entSensorThresholdEvaluation"]], ]); $self->get_snmp_tables('ENTITY-MIB', [ - ['entities', 'entPhysicalTable', 'Classes::Cisco::CISCOENTITYSENSORMIB::Component::SensorSubsystem::PhysicalEntity'], + ['entities', 'entPhysicalTable', 'Classes::Cisco::CISCOENTITYSENSORMIB::Component::SensorSubsystem::PhysicalEntity', undef, ["entPhysicalIndex", "entPhysicalDescr", "entPhysicalClass"]], ]); @{$self->{sensor_entities}} = grep { $_->{entPhysicalClass} eq 'sensor' } @{$self->{entities}}; foreach my $sensor (@{$self->{sensors}}) { @@ -76,12 +81,8 @@ sub check { # reparaturlauf foreach my $idx (0..1) { my $otheridx = $idx == 0 ? 1 : 0; - if (! defined @{$self->{thresholds}}[$idx]->{entSensorThresholdSeverity} && - @{$self->{thresholds}}[$otheridx]->{entSensorThresholdSeverity} eq "minor") { - @{$self->{thresholds}}[$idx]->{entSensorThresholdSeverity} = "major"; - } elsif (! defined @{$self->{thresholds}}[$idx]->{entSensorThresholdSeverity} && - @{$self->{thresholds}}[$otheridx]->{entSensorThresholdSeverity} eq "minor") { - @{$self->{thresholds}}[$idx]->{entSensorThresholdSeverity} = "minor"; + if (! defined @{$self->{thresholds}}[$idx]->{entSensorThresholdSeverity} && @{$self->{thresholds}}[$otheridx]->{entSensorThresholdSeverity} eq "minor") { @{$self->{thresholds}}[$idx]->{entSensorThresholdSeverity} = "major"; + } elsif (! defined @{$self->{thresholds}}[$idx]->{entSensorThresholdSeverity} && @{$self->{thresholds}}[$otheridx]->{entSensorThresholdSeverity} eq "major") { @{$self->{thresholds}}[$idx]->{entSensorThresholdSeverity} = "minor"; } } my $warning = (map { $_->{entSensorThresholdValue} } @@ -166,7 +167,6 @@ sub check { $self->add_perfdata( label => $label, value => $self->{entSensorValue}, - warning => $self->{ciscoEnvMonSensorThreshold}, ); } else { $self->add_perfdata( diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENVMONMIB/Component/FanSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENVMONMIB/Component/FanSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENVMONMIB/Component/FanSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENVMONMIB/Component/FanSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENVMONMIB/Component/PowersupplySubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENVMONMIB/Component/PowersupplySubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENVMONMIB/Component/PowersupplySubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENVMONMIB/Component/PowersupplySubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENVMONMIB/Component/TemperatureSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENVMONMIB/Component/TemperatureSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENVMONMIB/Component/TemperatureSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENVMONMIB/Component/TemperatureSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENVMONMIB/Component/VoltageSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENVMONMIB/Component/VoltageSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOENVMONMIB/Component/VoltageSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOENVMONMIB/Component/VoltageSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOIPSECFLOWMONITOR/Component/VpnSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOIPSECFLOWMONITOR/Component/VpnSubsystem.pm similarity index 98% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOIPSECFLOWMONITOR/Component/VpnSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOIPSECFLOWMONITOR/Component/VpnSubsystem.pm index 2c2b9cf..0b8daba 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOIPSECFLOWMONITOR/Component/VpnSubsystem.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOIPSECFLOWMONITOR/Component/VpnSubsystem.pm @@ -73,7 +73,6 @@ sub finish { $self->{cikeFailLocalValue} = $self->unhex_ip($self->{cikeFailLocalValue}); $self->{cikeFailRemoteAddr} = $self->unhex_ip($self->{cikeFailRemoteAddr}); $self->{cikeFailRemoteValue} = $self->unhex_ip($self->{cikeFailRemoteValue}); - $self->{cikeFailTime} /= 100; $self->{cikeFailTimeAgo} = $self->ago_sysuptime($self->{cikeFailTime}); } @@ -104,7 +103,6 @@ sub finish { my ($self) = @_; $self->{cipSecFailPktDstAddr} = $self->unhex_ip($self->{cipSecFailPktDstAddr}); $self->{cipSecFailPktSrcAddr} = $self->unhex_ip($self->{cipSecFailPktSrcAddr}); - $self->{cipSecFailTime} /= 100; $self->{cipSecFailTimeAgo} = $self->ago_sysuptime($self->{cipSecFailTime}); } diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOMEMORYPOOLMIB/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOMEMORYPOOLMIB/Component/MemSubsystem.pm similarity index 88% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOMEMORYPOOLMIB/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOMEMORYPOOLMIB/Component/MemSubsystem.pm index 613f61b..8194151 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOMEMORYPOOLMIB/Component/MemSubsystem.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOMEMORYPOOLMIB/Component/MemSubsystem.pm @@ -18,8 +18,10 @@ sub finish { my ($self) = @_; $self->{usage} = 100 * $self->{ciscoMemoryPoolUsed} / ($self->{ciscoMemoryPoolFree} + $self->{ciscoMemoryPoolUsed}); - $self->{type} = $self->{ciscoMemoryPoolType} ||= 0; - $self->{name} = $self->{ciscoMemoryPoolName}; + # Bel VPN Gate has only ciscoMemoryPoolUsed and ciscoMemoryPoolFree + # others were found to have no ciscoMemoryPoolType + $self->{type} = $self->{ciscoMemoryPoolType} ||= "generic memory"; + $self->{name} = $self->{ciscoMemoryPoolName} ||= "ram"; } sub check { diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOPORTSECURITYMIB/Component/InterfaceSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOPORTSECURITYMIB/Component/InterfaceSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOPORTSECURITYMIB/Component/InterfaceSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOPORTSECURITYMIB/Component/InterfaceSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOREMOTEACCESSMONITORMIB/Component/VpnSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOREMOTEACCESSMONITORMIB/Component/VpnSubsystem.pm new file mode 100644 index 0000000..9ee7fe5 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOREMOTEACCESSMONITORMIB/Component/VpnSubsystem.pm @@ -0,0 +1,148 @@ +package Classes::Cisco::CISCOREMOTEACCESSMONITORMIB::Component::VpnSubsystem; +our @ISA = qw(Monitoring::GLPlugin::SNMP::Item); +use strict; + +sub init { + my ($self) = @_; + $self->get_snmp_objects('CISCO-REMOTE-ACCESS-MONITOR-MIB', qw( + crasNumUsers crasMaxUsersSupportable + crasNumGroups crasMaxGroupsSupportable + crasNumSessions crasThrMaxSessions crasMaxSessionsSupportable + crasGlobalBwUsage + crasNumDeclinedSessions crasThrMaxFailedAuths + crasNumTotalFailures + crasIPSecNumSessions crasIPSecCumulateSessions + )); +} + +sub check { + my ($self) = @_; + if ($self->{crasMaxSessionsSupportable}) { + $self->{sessions_pct} = 100 * $self->{crasNumSessions} / + $self->{crasMaxSessionsSupportable}; + } else { + $self->{sessions_pct} = 0; + } + if ($self->{crasThrMaxSessions}) { + if ($self->{crasThrMaxSessions} > $self->{crasNumSessions}) { + $self->add_info(sprintf "session limit of %d has been reached", + $self->{crasThrMaxSessions}); + $self->add_critical(); + } + if ($self->{crasMaxSessionsSupportable}) { + $self->set_thresholds(metric => "session_usage", + warning => 100 * $self->{crasThrMaxSessions} / + $self->{crasMaxSessionsSupportable}, + critical => 100 * $self->{crasThrMaxSessions} / + $self->{crasMaxSessionsSupportable}, + ); + } else { + $self->set_thresholds(metric => "session_usage", + warning => 80, critical => 80); + } + } else { + $self->set_thresholds(metric => "session_usage", + warning => 80, critical => 80); + } + $self->add_info(sprintf "%d sessions%s", + $self->{crasNumSessions}, + $self->{crasMaxSessionsSupportable} ? + sprintf(" (of %d)", $self->{crasMaxSessionsSupportable}) : ""); + $self->add_message($self->check_thresholds(metric => "session_usage", + value => $self->{sessions_pct})); + $self->add_perfdata(label => "session_usage", + value => $self->{sessions_pct}, + uom => '%', + places => 2, + ); + + if ($self->{crasMaxUsersSupportable}) { + $self->{users_pct} = 100 * $self->{crasNumUsers} / + $self->{crasMaxUsersSupportable}; + } else { + $self->{users_pct} = 0; + } + $self->add_info(sprintf "%d users%s", + $self->{crasNumUsers}, + $self->{crasMaxUsersSupportable} ? + sprintf(" (of %d)", $self->{crasMaxUsersSupportable}) : ""); + $self->set_thresholds(metric => "users_usage", + warning => 80, critical => 80); + $self->add_message($self->check_thresholds(metric => "users_usage", + value => $self->{users_pct})); + $self->add_perfdata(label => "users_usage", + value => $self->{users_pct}, + uom => '%', + places => 2, + ); + + if ($self->{crasMaxGroupsSupportable}) { + $self->{groups_pct} = 100 * $self->{crasNumGroups} / + $self->{crasMaxGroupsSupportable}; + } else { + $self->{groups_pct} = 0; + } + $self->add_info(sprintf "%d groups%s", + $self->{crasNumGroups}, + $self->{crasMaxGroupsSupportable} ? + sprintf(" (of %d)", $self->{crasMaxGroupsSupportable}) : ""); + $self->set_thresholds(metric => "groups_usage", + warning => 80, critical => 80); + $self->add_message($self->check_thresholds(metric => "groups_usage", + value => $self->{groups_pct})); + $self->add_perfdata(label => "groups_usage", + value => $self->{groups_pct}, + uom => '%', + places => 2, + ); + + $self->valdiff({name => "crasNumTotalFailures"}, qw(crasNumTotalFailures)); + $self->{delta_crasNumTotalFailuresRate} = + $self->{delta_crasNumTotalFailures} / $self->{delta_timestamp}; + $self->add_info(sprintf "failure rate %.2s/s", + $self->{delta_crasNumTotalFailuresRate}); + $self->set_thresholds(metric => "failure_rate", + warning => 0.1, critical => 0.5); + $self->add_message($self->check_thresholds(metric => "failure_rate", + value => $self->{delta_crasNumTotalFailuresRate})); + $self->add_perfdata(label => "failure_rate", + value => $self->{delta_crasNumTotalFailuresRate}, + places => 2, + ); + + $self->valdiff({name => "crasIPSecCumulateSessions"}, qw(crasIPSecCumulateSessions)); + $self->set_thresholds(metric => "sessions_per_sec", + warning => -1, critical => -1); + my($sessions_per_sec_w, $sessions_per_sec_c) = + $self->get_thresholds(metric => "sessions_per_sec"); + if ($sessions_per_sec_w ne "-1" || $sessions_per_sec_c ne "-1") { + # one customer has serious problems when vpn connections are freezing + # a symptom is the number of sessions is constant over some minutes + # where there should be always an up and down. + # This part of the code is only executed if + # there is a --criticalx sessions_per_sec=0.001: + $sessions_per_sec_w = "0:" if $sessions_per_sec_w eq "-1"; + $sessions_per_sec_c = "0:" if $sessions_per_sec_c eq "-1"; + $self->set_thresholds(metric => "sessions_per_sec", + warning => $sessions_per_sec_w, critical => $sessions_per_sec_c); + $self->add_info(sprintf "total connections incrrease rate is %.5f/s", + $self->{crasIPSecCumulateSessions_per_sec}); + $self->add_message($self->check_thresholds(metric => "sessions_per_sec", + value => $self->{crasIPSecCumulateSessions_per_sec})); + $self->add_perfdata(label => "sessions_per_sec", + value => $self->{crasIPSecCumulateSessions_per_sec}, + places => 4, + ); + } +} + + +package Classes::Cisco::CISCOREMOTEACCESSMONITORMIB::Component::VpnSubsystem::Session; +our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); +use strict; + +package Classes::Cisco::CISCOREMOTEACCESSMONITORMIB::Component::VpnSubsystem::Failure; +our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); +use strict; + + diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOSTACKMIB/Component/StackSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOSTACKMIB/Component/StackSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOSTACKMIB/Component/StackSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOSTACKMIB/Component/StackSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOSTACKWISEMIB/Component/StackSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOSTACKWISEMIB/Component/StackSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/CISCOSTACKWISEMIB/Component/StackSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/CISCOSTACKWISEMIB/Component/StackSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/IOS.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/IOS.pm similarity index 93% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/IOS.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/IOS.pm index 2db93b3..6484330 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/IOS.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/IOS.pm @@ -41,6 +41,8 @@ sub init { $self->analyze_and_check_wlan_subsystem("Classes::Cisco::WLC::Component::WlanSubsystem"); } elsif ($self->mode =~ /device::vpn::status/) { $self->analyze_and_check_config_subsystem("Classes::Cisco::CISCOIPSECFLOWMONITOR::Component::VpnSubsystem"); + } elsif ($self->mode =~ /device::vpn::sessions/) { + $self->analyze_and_check_config_subsystem("Classes::Cisco::CISCOREMOTEACCESSMONITORMIB::Component::VpnSubsystem"); } else { $self->no_such_mode(); } diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/IOS/Component/BgpSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/IOS/Component/BgpSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/IOS/Component/BgpSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/IOS/Component/BgpSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/IOS/Component/ConfigSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/IOS/Component/ConfigSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/IOS/Component/ConfigSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/IOS/Component/ConfigSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/IOS/Component/ConnectionSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/IOS/Component/ConnectionSubsystem.pm similarity index 87% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/IOS/Component/ConnectionSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/IOS/Component/ConnectionSubsystem.pm index a957650..7f517d1 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/IOS/Component/ConnectionSubsystem.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/IOS/Component/ConnectionSubsystem.pm @@ -18,10 +18,10 @@ sub check { if ($self->{cfwConnectionStatDescription} !~ /number of connections currently in use/i) { $self->add_blacklist(sprintf 'c:%s', $self->{cfwConnectionStatDescription}); $self->add_info(sprintf '%d connections currently in use', - $self->{cfwConnectionStatValue}||$self->{cfwConnectionStatCount}, $self->{usage}); + ($self->{cfwConnectionStatValue}||$self->{cfwConnectionStatCount})); } else { $self->add_info(sprintf '%d connections currently in use', - $self->{cfwConnectionStatValue}, $self->{usage}); + $self->{cfwConnectionStatValue}); $self->set_thresholds(warning => 500000, critical => 750000); $self->add_message($self->check_thresholds($self->{cfwConnectionStatValue})); $self->add_perfdata( diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/IOS/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/IOS/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/IOS/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/IOS/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/IOS/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/IOS/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/IOS/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/IOS/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/IOS/Component/HaSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/IOS/Component/HaSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/IOS/Component/HaSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/IOS/Component/HaSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/IOS/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/IOS/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/IOS/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/IOS/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/IOS/Component/NatSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/IOS/Component/NatSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/IOS/Component/NatSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/IOS/Component/NatSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/NXOS.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/NXOS.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/NXOS.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/NXOS.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/NXOS/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/NXOS/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/NXOS/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/NXOS/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/NXOS/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/NXOS/Component/EnvironmentalSubsystem.pm similarity index 83% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/NXOS/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/NXOS/Component/EnvironmentalSubsystem.pm index bb67a90..67a308b 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/NXOS/Component/EnvironmentalSubsystem.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/NXOS/Component/EnvironmentalSubsystem.pm @@ -4,10 +4,12 @@ use strict; sub init { my ($self) = @_; - #$self->mult_snmp_max_msg_size(10); - $self->bulk_is_baeh(10); $self->{sensor_subsystem} = - Classes::Cisco::CISCOENTITYSENSORMIB::Component::SensorSubsystem->new(); + Classes::Cisco::CISCOENTITYSENSORMIB::Component::SensorSubsystem->new() + unless $self->opts->nosensors; + # weil irgendwie ist die Voltagetemperatur am 8912ten Sensor auch + # schon Wurscht, insbesondere wenn da riesige, langsame Tabellen + # quer über den Pazifik geschaufelt werden. if ($self->implements_mib('CISCO-ENTITY-FRU-CONTROL-MIB')) { $self->{fru_subsystem} = Classes::Cisco::CISCOENTITYFRUCONTROLMIB::Component::EnvironmentalSubsystem->new(); $self->check_l2_l3(); @@ -33,9 +35,11 @@ sub init { sub check { my ($self) = @_; - $self->{sensor_subsystem}->check(); + $self->{sensor_subsystem}->check() unless $self->opts->nosensors; if (exists $self->{fru_subsystem}) { $self->{fru_subsystem}->check(); + } elsif ($self->opts->nosensors) { + $self->add_unknown("please run without --nosensors, there is no other MIB available"); } if (! $self->check_messages()) { $self->clear_ok(); @@ -45,7 +49,7 @@ sub check { sub dump { my ($self) = @_; - $self->{sensor_subsystem}->dump(); + $self->{sensor_subsystem}->dump() unless $self->opts->nosensors; if (exists $self->{fru_subsystem}) { $self->{fru_subsystem}->dump(); } diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/NXOS/Component/FexSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/NXOS/Component/FexSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/NXOS/Component/FexSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/NXOS/Component/FexSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/NXOS/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/NXOS/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/NXOS/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/NXOS/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/OLDCISCOINTERFACESMIB/Component/InterfaceSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/OLDCISCOINTERFACESMIB/Component/InterfaceSubsystem.pm similarity index 98% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/OLDCISCOINTERFACESMIB/Component/InterfaceSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/OLDCISCOINTERFACESMIB/Component/InterfaceSubsystem.pm index 8906483..28cace5 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/OLDCISCOINTERFACESMIB/Component/InterfaceSubsystem.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/OLDCISCOINTERFACESMIB/Component/InterfaceSubsystem.pm @@ -308,7 +308,7 @@ sub check { package Classes::Cisco::OLDCISCOINTERFACESMIB::Component::InterfaceSubsystem::Interface::64bit; -our @ISA = qw(Classes::IFMIB::Component::InterfaceSubsystem::Interface::64bit Classes::Cisco::OLDCISCOINTERFACESMIB::Component::InterfaceSubsystem::Interface); +our @ISA = qw(Classes::Cisco::OLDCISCOINTERFACESMIB::Component::InterfaceSubsystem::Interface Classes::IFMIB::Component::InterfaceSubsystem::Interface::64bit); use strict; use Digest::MD5 qw(md5_hex); diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/PrimeNCS.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/PrimeNCS.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/PrimeNCS.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/PrimeNCS.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/SB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/SB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/SB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/SB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/SB/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/SB/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/SB/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/SB/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/SB/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/SB/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/SB/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/SB/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/SB/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/SB/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/SB/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/SB/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/UCOS.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/UCOS.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/UCOS.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/UCOS.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/WLC.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/WLC.pm similarity index 68% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/WLC.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/WLC.pm index 78bdf0f..5d705be 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/WLC.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/WLC.pm @@ -26,8 +26,10 @@ sub init { $self->analyze_and_check_mem_subsystem("Classes::Cisco::IOS::Component::MemSubsystem"); } } elsif ($self->mode =~ /device::wlan/) { + $self->select_lwapp_ha_version(); $self->analyze_and_check_wlan_subsystem("Classes::Cisco::WLC::Component::WlanSubsystem"); } elsif ($self->mode =~ /device::ha::/) { + $self->select_lwapp_ha_version(); $self->analyze_and_check_wlan_subsystem("Classes::Cisco::WLC::Component::HaSubsystem"); } else { $self->no_such_mode(); @@ -41,3 +43,19 @@ sub pretty_sysdesc { return $self->{agentInventorySysDescription}." ".$self->{agentInventoryMachineModel}; } } + +sub select_lwapp_ha_version { + my ($self) = @_; + $self->require_mib('CISCO-LWAPP-HA-MIB'); + if ($self->implements_mib('CISCO-LWAPP-HA-MIB::2017')) { + $Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'CISCO-LWAPP-HA-MIB'} = + $Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'CISCO-LWAPP-HA-MIB::2017'}; + $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'CISCO-LWAPP-HA-MIB'} = + $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'CISCO-LWAPP-HA-MIB::2017'}; + } else { + $Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'CISCO-LWAPP-HA-MIB'} = + $Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'CISCO-LWAPP-HA-MIB::2012'}; + $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'CISCO-LWAPP-HA-MIB'} = + $Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'CISCO-LWAPP-HA-MIB::2012'}; + } +} diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/WLC/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/WLC/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/WLC/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/WLC/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/WLC/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/WLC/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/WLC/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/WLC/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/WLC/Component/HaSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/WLC/Component/HaSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/WLC/Component/HaSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/WLC/Component/HaSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/WLC/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/WLC/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/WLC/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/WLC/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/WLC/Component/WlanSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/WLC/Component/WlanSubsystem.pm similarity index 98% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/WLC/Component/WlanSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/WLC/Component/WlanSubsystem.pm index 02d05dc..764115a 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cisco/WLC/Component/WlanSubsystem.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cisco/WLC/Component/WlanSubsystem.pm @@ -11,8 +11,8 @@ sub init { } else { $self->{name} = $self->get_snmp_object('MIB-2-MIB', 'sysName', 0); $self->get_snmp_objects('CISCO-LWAPP-HA-MIB', qw( - cLHaPrimaryUnit cLHaNetworkFailOver cLHaPeerIpAddress - cLHaRedundancyIpAddress + cLHaPrimaryUnit cLHaNetworkFailOver cLHaPeerIpAddressType cLHaPeerIpAddress + cLHaRedundancyIpAddressType cLHaRedundancyIpAddress )); $self->mult_snmp_max_msg_size(4); $self->get_snmp_tables('AIRESPACE-WIRELESS-MIB', [ diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Clavister.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Clavister.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Clavister.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Clavister.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Clavister/Firewall1.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Clavister/Firewall1.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Clavister/Firewall1.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Clavister/Firewall1.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Clavister/Firewall1/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Clavister/Firewall1/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Clavister/Firewall1/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Clavister/Firewall1/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Clavister/Firewall1/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Clavister/Firewall1/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Clavister/Firewall1/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Clavister/Firewall1/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Clavister/Firewall1/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Clavister/Firewall1/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Clavister/Firewall1/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Clavister/Firewall1/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cumulus.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cumulus.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Cumulus.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Cumulus.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Device.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Device.pm similarity index 92% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Device.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Device.pm index b741e82..e5e2006 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Device.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Device.pm @@ -22,6 +22,22 @@ sub classify { $self->{productname} = 'upnp'; $self->check_upnp_and_model(); } else { + $self->{broken_snmp_agent} = [ + sub { + if ($self->implements_mib("UCD-SNMP-MIB")) { + $self->debug("this is a very, very dumb brick with just the UCD-SNMP-MIB"); + $self->{productname} = "generic_ucd"; + $self->{uptime} = $self->timeticks(100 * 3600); + my $sysobj = $self->get_snmp_object('MIB-2-MIB', 'sysObjectID', 0); + if (! $sysobj) { + $self->add_rawdata('1.3.6.1.2.1.1.2.0', "dearmanufactureryouareasdumbasyourpieceofcrap"); + $self->{sysobjectid} = "dearmanufactureryouareasdumbasyourpieceofcrap"; + } + return 1; + } + return 0; + }, + ]; $self->check_snmp_and_model(); } if ($self->opts->servertype) { @@ -133,7 +149,7 @@ sub classify { } elsif ($self->{sysobjectid} =~ /1\.3\.6\.1\.4\.1\.2011\.2\./) { $self->rebless('Classes::Huawei'); } elsif ($self->{productname} =~ /Procurve/i || - ($self->implements_mib('HP-ICF-CHASSIS-MIB') && + ($self->implements_mib('HP-ICF-CHASSIS') && $self->implements_mib('NETSWITCH-MIB'))) { $self->rebless('Classes::HP::Procurve'); } elsif ($self->{productname} =~ /((cpx86_64)|(Check\s*Point)|(IPSO)|(Linux.*\dcp) )/i || $self->implements_mib('CHECKPOINT-MIB')) { @@ -176,6 +192,9 @@ sub classify { $self->rebless('Classes::Riverbed'); } elsif ($self->implements_mib('LCOS-MIB')) { $self->rebless('Classes::Lancom'); + } elsif ($self->implements_mib('PHION-MIB') || + $self->{productname} =~ /Barracuda/) { + $self->rebless('Classes::Barracuda'); } elsif ($self->{productname} =~ /^Linux/i) { $self->rebless('Classes::Server::Linux'); } else { diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/DrayTek.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/DrayTek.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/DrayTek.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/DrayTek.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/DrayTek/Vigor.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/DrayTek/Vigor.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/DrayTek/Vigor.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/DrayTek/Vigor.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/DrayTek/Vigor/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/DrayTek/Vigor/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/DrayTek/Vigor/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/DrayTek/Vigor/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/DrayTek/Vigor/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/DrayTek/Vigor/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/DrayTek/Vigor/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/DrayTek/Vigor/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/DrayTek/Vigor/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/DrayTek/Vigor/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/DrayTek/Vigor/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/DrayTek/Vigor/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/ENTITYSENSORMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/ENTITYSENSORMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/ENTITYSENSORMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/ENTITYSENSORMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/ENTITYSENSORMIB/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/ENTITYSENSORMIB/Component/EnvironmentalSubsystem.pm similarity index 90% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/ENTITYSENSORMIB/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/ENTITYSENSORMIB/Component/EnvironmentalSubsystem.pm index 54dd287..e9bc7f6 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/ENTITYSENSORMIB/Component/EnvironmentalSubsystem.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/ENTITYSENSORMIB/Component/EnvironmentalSubsystem.pm @@ -53,8 +53,14 @@ sub init { @{$self->{sensors}} = (@sfans, @spss, @ssensors); } else { foreach (@{$self->{sensors}}) { + $_->{entPhysicalIndex} = $_->{flat_indices}; $_->{entPhySensorEntityName} = $entity_indices->{$_->{flat_indices}}->{entPhysicalName}; + if ($_->{entPhySensorEntityName} =~ /^Fan/ and + $_->{entPhySensorType} eq "other" and ref($_) eq + "Classes::ENTITYSENSORMIB::Component::EnvironmentalSubsystem::Sensor") { + bless $_, "Classes::ENTITYSENSORMIB::Component::EnvironmentalSubsystem::Sensor::DumbFan"; + } } } delete $self->{entities}; @@ -115,6 +121,7 @@ sub finish { } if ($self->{entPhySensorType} eq 'rpm') { bless $self, 'Classes::ENTITYSENSORMIB::Component::EnvironmentalSubsystem::Sensor::Fan'; + bless $self, 'Classes::ENTITYSENSORMIB::Component::EnvironmentalSubsystem::Sensor::Fan'; } elsif ($self->{entPhySensorType} eq 'celsius') { bless $self, 'Classes::ENTITYSENSORMIB::Component::EnvironmentalSubsystem::Sensor::Temperature'; } elsif ($self->{entPhySensorType} eq 'watts') { @@ -165,6 +172,15 @@ sub check { ); } +package Classes::ENTITYSENSORMIB::Component::EnvironmentalSubsystem::Sensor::DumbFan; +our @ISA = qw(Classes::ENTITYSENSORMIB::Component::EnvironmentalSubsystem::Sensor); +use strict; + +sub check { + my ($self) = @_; + $self->SUPER::check(); +} + package Classes::ENTITYSENSORMIB::Component::EnvironmentalSubsystem::Sensor::Fan; our @ISA = qw(Classes::ENTITYSENSORMIB::Component::EnvironmentalSubsystem::Sensor); use strict; diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Eltex.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Eltex.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Eltex.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Eltex.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Eltex/Access.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Eltex/Access.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Eltex/Access.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Eltex/Access.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Eltex/Access/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Eltex/Access/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Eltex/Access/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Eltex/Access/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Eltex/Aggregation.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Eltex/Aggregation.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Eltex/Aggregation.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Eltex/Aggregation.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Eltex/Aggregation/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Eltex/Aggregation/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Eltex/Aggregation/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Eltex/Aggregation/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Eltex/MES/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Eltex/MES/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Eltex/MES/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Eltex/MES/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Eltex/MES/Component/HaSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Eltex/MES/Component/HaSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Eltex/MES/Component/HaSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Eltex/MES/Component/HaSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP.pm similarity index 84% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP.pm index 4ae0225..453b88b 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP.pm @@ -8,7 +8,7 @@ sub init { $self->{sysProductVersion} = $self->get_snmp_object('F5-BIGIP-SYSTEM-MIB', 'sysProductVersion'); $self->{sysPlatformInfoMarketingName} = $self->get_snmp_object('F5-BIGIP-SYSTEM-MIB', 'sysPlatformInfoMarketingName'); if (! defined $self->{sysProductVersion} || - $self->{sysProductVersion} !~ /^((9)|(10)|(11)|(12)|(13))/) { + $self->{sysProductVersion} !~ /^((9)|(10)|(11)|(12)|(13)|(14)|(15)|(16))/) { $self->{sysProductVersion} = "4"; } if ($self->mode =~ /device::hardware::health/) { @@ -31,12 +31,16 @@ sub init { } } elsif ($self->mode =~ /device::wideip/) { $self->analyze_and_check_gtm_subsystem("Classes::F5::F5BIGIP::Component::GTMSubsystem"); - } elsif ($self->mode =~ /device::users/) { + } elsif ($self->mode =~ /device::users::count/) { + $self->analyze_and_check_connection_subsystem("Classes::F5::F5BIGIP::Component::ConnectionSubsystem"); + } elsif ($self->mode =~ /device::connections::count/) { $self->analyze_and_check_connection_subsystem("Classes::F5::F5BIGIP::Component::ConnectionSubsystem"); } elsif ($self->mode =~ /device::config/) { $self->analyze_and_check_config_subsystem("Classes::F5::F5BIGIP::Component::ConfigSubsystem"); } elsif ($self->mode =~ /device::ha::/) { $self->analyze_and_check_ha_subsystem("Classes::F5::F5BIGIP::Component::HaSubsystem"); + } elsif ($self->mode =~ /device::vip/) { + $self->analyze_and_check_vip_subsystem("Classes::F5::F5BIGIP::Component::VipSubsystem"); } else { $self->no_such_mode(); } diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/ConfigSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/ConfigSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/ConfigSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/ConfigSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/ConnectionSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/ConnectionSubsystem.pm new file mode 100644 index 0000000..a9fe8fe --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/ConnectionSubsystem.pm @@ -0,0 +1,61 @@ +package Classes::F5::F5BIGIP::Component::ConnectionSubsystem; +our @ISA = qw(Monitoring::GLPlugin::SNMP::Item); +use strict; + +sub init { + my $self = shift; + if ($self->mode =~ /device::users::count/) { + $self->get_snmp_objects('F5-BIGIP-SYSTEM-MIB', (qw(sysStatClientCurConns sysStatServerCurConns))); + } elsif ($self->mode =~ /device::connections::count/) { + $self->get_snmp_objects('F5-BIGIP-APM-MIB', (qw( + apmAccessStatTotalSessions apmAccessStatCurrentActiveSessions + apmGlobalConnectivityStatTotConns apmGlobalConnectivityStatCurConns + ))); + } +} + +sub check { + my $self = shift; + if ($self->mode =~ /device::users::count/) { + $self->set_thresholds(warning => 500000, critical => 750000); + $self->add_info(sprintf '%d client connections in use', $self->{sysStatClientCurConns}); + $self->add_message($self->check_thresholds(metric => 'client_cur_conns', value => $self->{sysStatClientCurConns})); + $self->add_perfdata( + label => 'client_cur_conns', + value => $self->{sysStatClientCurConns}, + ); + $self->add_info(sprintf '%d server connections in use', $self->{sysStatServerCurConns}); + $self->add_message($self->check_thresholds(metric => 'server_cur_conns', value => $self->{sysStatServerCurConns})); + $self->add_perfdata( + label => 'server_cur_conns', + value => $self->{sysStatServerCurConns}, + ); + } elsif ($self->mode =~ /device::connections::count/) { + # schwellwerte aus https://support.f5.com/csp/article/K15032 + $self->set_thresholds(metric => 'apm_access_sessions', + warning => 2000, critical => 2500); + $self->add_info(sprintf '%d current access sessions', + $self->{apmAccessStatCurrentActiveSessions}); + $self->add_message($self->check_thresholds( + metric => 'apm_access_sessions', + value => $self->{apmAccessStatCurrentActiveSessions} + )); + $self->add_perfdata( + label => 'apm_access_sessions', + value => $self->{apmAccessStatCurrentActiveSessions}, + ); + $self->set_thresholds(metric => 'apm_ccu_sessions', + warning => 400, critical => 500); + $self->add_info(sprintf '%d current connectivity sessions', + $self->{apmGlobalConnectivityStatCurConns}); + $self->add_message($self->check_thresholds( + metric => 'apm_ccu_sessions', + value => $self->{apmGlobalConnectivityStatCurConns} + )); + $self->add_perfdata( + label => 'apm_ccu_sessions', + value => $self->{apmGlobalConnectivityStatCurConns}, + ); + } +} + diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/CpuSubsystem.pm similarity index 98% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/CpuSubsystem.pm index 6b581df..c6398c9 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/CpuSubsystem.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/CpuSubsystem.pm @@ -27,6 +27,7 @@ sub overall_init { sub init { my ($self) = @_; + $self->bulk_is_baeh(5); $self->get_snmp_tables('F5-BIGIP-SYSTEM-MIB', [ ['cpus', 'sysCpuTable', 'Classes::F5::F5BIGIP::Component::CpuSubsystem::Cpu'], ]); diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/DiskSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/DiskSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/DiskSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/DiskSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/FanSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/FanSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/FanSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/FanSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/GTM.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/GTM.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/GTM.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/GTM.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/HaSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/HaSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/HaSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/HaSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/LTM.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/LTM.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/LTM.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/LTM.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/PowersupplySubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/PowersupplySubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/PowersupplySubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/PowersupplySubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/TemperatureSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/TemperatureSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/TemperatureSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/TemperatureSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/VipSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/VipSubsystem.pm new file mode 100644 index 0000000..b4581ea --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/F5/F5BIGIP/Component/VipSubsystem.pm @@ -0,0 +1,161 @@ +package Classes::F5::F5BIGIP::Component::VipSubsystem; +our @ISA = qw(Monitoring::GLPlugin::SNMP::Item); +use Socket; +use Net::Ping; + +sub init { + my ($self) = @_; + $self->get_snmp_tables('F5-BIGIP-LOCAL-MIB', [ + ['vips', 'ltmVirtualServTable', 'Classes::F5::F5BIGIP::Component::VipSubsystem::VIP'], + ]); +} + +sub check { + my ($self) = @_; + if ($self->mode =~ /vip::list/) { + foreach (@{$self->{vips}}) { + printf "%s\n", $_->{ltmVirtualServName}; + } + $self->add_ok("have fun"); + } elsif ($self->mode =~ /vip::connect/) { + my $ping = Net::Ping->new("syn"); + foreach (@{$self->{vips}}) { + $ping->port_number($_->{ltmVirtualServPort}); + my $now = time; + $ping->ping_syn($_->{ltmVirtualServAddr}, + inet_aton($_->{ltmVirtualServAddr}), + $now, $now + 2); + } + sleep 1; + my $num_unreachable_vips = 0; + foreach (@{$self->{vips}}) { + $ping->port_number($_->{ltmVirtualServPort}); + if ($ping->ack($_->{ltmVirtualServAddr})) { + $self->add_info(sprintf "%s:%d reachable", + $_->{ltmVirtualServName}, $_->{ltmVirtualServPort}); + $self->add_ok(); + } else { + $num_unreachable_vips++; + my $host = $self->reverse_resolve($_->{ltmVirtualServAddr}); + if ($host) { + $self->add_info(sprintf "%s:%d (%s) unreachable", + $_->{ltmVirtualServName}, $_->{ltmVirtualServPort}, $host); + } else { + $self->add_info(sprintf "%s:%d unreachable", + $_->{ltmVirtualServName}, $_->{ltmVirtualServPort}); + } + $self->add_critical(); + } + } + $self->reduce_messages(sprintf "all %d vips are up", scalar(@{$self->{vips}})); + $self->add_perfdata( + label => 'reachable_vips', + value => scalar(@{$self->{vips}}) - $num_unreachable_vips, + min => 0, + max => scalar(@{$self->{vips}}), + ); + $self->add_perfdata( + label => 'unreachable_vips', + value => $num_unreachable_vips, + min => 0, + max => scalar(@{$self->{vips}}), + ); + } elsif ($self->mode =~ /vip::watch/) { + # take a snapshot of the vip list. -> good baseline + # warning if there appear vips, mitigate to ok + # critical if warn/crit percent disappear + $self->{numOfVips} = scalar (@{$self->{vips}}); + $self->{vipNameList} = [map { $_->{ltmVirtualServName} } @{$self->{vips}}]; + $self->opts->override_opt('lookback', 3600) if ! $self->opts->lookback; + if ($self->opts->reset) { + my $statefile = $self->create_statefile(name => 'ltmviplist', lastarray => 1); + unlink $statefile if -f $statefile; + } + $self->valdiff({name => 'ltmviplist', lastarray => 1}, + qw(vipNameList numOfVips)); + my $problem = 0; + if ($self->opts->warning || $self->opts->critical) { + $self->set_thresholds(warning => $self->opts->warning, + critical => $self->opts->critical); + my $before = $self->{numOfVips} - scalar(@{$self->{delta_found_vipNameList}}) + scalar(@{$self->{delta_lost_vipNameList}}); + # use own delta_numOfVips, because the glplugin version treats + # negative deltas as overflows + $self->{delta_numOfVips} = $self->{numOfVips} - $before; + if ($self->opts->units && $self->opts->units eq "%") { + my $delta_pct = $before ? (($self->{delta_numOfVips} / $before) * 100) : 0; + $self->add_message($self->check_thresholds($delta_pct), + sprintf "%.2f%% delta, before: %d, now: %d", $delta_pct, $before, $self->{numOfVips}); + $problem = $self->check_thresholds($delta_pct); + } else { + $self->add_message($self->check_thresholds($self->{delta_numOfVips}), + sprintf "%d delta, before: %d, now: %d", $self->{delta_numOfVips}, $before, $self->{numOfVips}); + $problem = $self->check_thresholds($self->{delta_numOfVips}); + } + if (scalar(@{$self->{delta_found_vipNameList}}) > 0) { + $self->add_ok(sprintf 'found: %s', + join(", ", @{$self->{delta_found_vipNameList}})); + } + if (scalar(@{$self->{delta_lost_vipNameList}}) > 0) { + $self->add_ok(sprintf 'lost: %s', + join(", ", @{$self->{delta_lost_vipNameList}})); + } + } else { + if (scalar(@{$self->{delta_found_vipNameList}}) > 0) { + $self->add_warning(sprintf '%d new vips (%s)', + scalar(@{$self->{delta_found_vipNameList}}), + join(", ", @{$self->{delta_found_vipNameList}})); + $problem = 1; + } + if (scalar(@{$self->{delta_lost_vipNameList}}) > 0) { + $self->add_critical(sprintf '%d vips missing (%s)', + scalar(@{$self->{delta_lost_vipNameList}}), + join(", ", map { + my $vip = $_; + my $name = undef; + if ($vip =~ /(\d+)[\.\-_](\d+)[\.\-_](\d+)[\.\-_](\d+)/) { + if ($1 < 255 && $2 < 255 && $3 < 255 && $4 < 255) { + $name = $self->reverse_resolve($1.".".$2.".".$3.".".$4); + } + } + if ($name) { + $vip." (".$name.")"; + } else { + $vip; + } + } @{$self->{delta_lost_vipNameList}})); + $problem = 2; + } + $self->add_ok(sprintf 'found %d vips', scalar (@{$self->{vips}})); + } + if ($problem) { # relevant only for lookback=9999 and support contract customers + $self->valdiff({name => 'ltmviplist', lastarray => 1, freeze => 1}, + qw(vipNameList numOfVips)); + } else { + $self->valdiff({name => 'ltmviplist', lastarray => 1, freeze => 2}, + qw(vipNameList numOfVips)); + } + $self->add_perfdata( + label => 'num_vips', + value => scalar (@{$self->{vips}}), + ); + } +} + +sub reverse_resolve { + my ($self, $ip) = @_; + my $name = undef; + eval { + $ENV{RES_OPTIONS} = "timeout:2"; + my $iaddr = Socket::inet_aton($ip); + $name = gethostbyaddr($iaddr, Socket::AF_INET); + }; + return $name; +} + +package Classes::F5::F5BIGIP::Component::VipSubsystem::VIP; +our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); + +sub finish { + my ($self) = @_; +} + diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FCEOS.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FCEOS.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FCEOS.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FCEOS.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FCEOS/Components/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FCEOS/Components/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FCEOS/Components/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FCEOS/Components/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FCEOS/Components/FruSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FCEOS/Components/FruSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FCEOS/Components/FruSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FCEOS/Components/FruSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FCMGMT.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FCMGMT.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FCMGMT.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FCMGMT.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FCMGMT/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FCMGMT/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FCMGMT/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FCMGMT/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FCMGMT/Component/SensorSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FCMGMT/Component/SensorSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FCMGMT/Component/SensorSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FCMGMT/Component/SensorSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FabOS.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FabOS.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FabOS.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FabOS.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FabOS/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FabOS/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FabOS/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FabOS/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FabOS/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FabOS/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FabOS/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FabOS/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FabOS/Component/InterfaceSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FabOS/Component/InterfaceSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FabOS/Component/InterfaceSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FabOS/Component/InterfaceSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FabOS/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FabOS/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FabOS/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FabOS/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FabOS/Component/SensorSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FabOS/Component/SensorSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/FabOS/Component/SensorSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/FabOS/Component/SensorSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Fortigate.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Fortigate.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Fortigate.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Fortigate.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Fortigate/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Fortigate/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Fortigate/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Fortigate/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Fortigate/Component/DiskSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Fortigate/Component/DiskSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Fortigate/Component/DiskSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Fortigate/Component/DiskSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Fortigate/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Fortigate/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Fortigate/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Fortigate/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Fortigate/Component/HaSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Fortigate/Component/HaSubsystem.pm similarity index 62% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Fortigate/Component/HaSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Fortigate/Component/HaSubsystem.pm index 01848cf..2a1d8d2 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Fortigate/Component/HaSubsystem.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Fortigate/Component/HaSubsystem.pm @@ -15,9 +15,18 @@ sub init { ['fgHaStatsTable', 'fgHaStatsTable', 'Classes::Fortigate::Component::HaSubsystem::SyncStatus'], ['fgVdTable', 'fgVdTable', 'Monitoring::GLPlugin::SNMP::TableItem'], ]); - if ($self->mode =~ /device::ha::role/) { - $self->opts->override_opt('role', 'active'); + if (! $self->opts->role()) { + $self->opts->override_opt('role', 'master'); # fgHaSystemMode: activePassive, activeActive or standalone + # https://docs.fortinet.com/document/fortigate/6.0.6/handbook/943352/fgcp-ha-glossary + # Primary unit + # Also called the primary cluster unit, this cluster unit controls how the cluster operates. + # The FortiGate firmware uses the term master to refer to the primary unit. + # Standby State + # A subordinate unit in an active-passive HA cluster operates in the standby state + # Subordinate unit + # Also called the subordinate cluster unit, each cluster contains one or more cluster units that are not functioning as the primary unit. + # The FortiGate firmware uses the terms slave and subsidiary unit to refer to a subordinate unit. } foreach (@{$self->{fgHaStatsTable}}) { $_->{fnSysSerial} = $self->{fnSysSerial}; @@ -41,8 +50,13 @@ sub check { foreach (@{$self->{fgHaStatsTable}}) { $_->check(); } + $self->set_thresholds(metric => 'num_nodes', + warning => '2:', + critical => undef, + ); $self->add_info(sprintf "cluster has %d nodes", scalar(@{$self->{fgHaStatsTable}})); - $self->add_ok(); + $self->add_message($self->check_thresholds(metric => 'num_nodes', + value => scalar(@{$self->{fgHaStatsTable}}))); } } @@ -55,11 +69,12 @@ sub check { my ($self) = @_; if ($self->{fgHaStatsSerial} eq $self->{fnSysSerial}) { if ($self->mode eq "device::ha::role") { - $self->{iammaster} = $self->{fgHaStatsMasterSerial} eq $self->{fnSysSerial} ? 1 : 0; - $self->add_info(sprintf "this is a %s node in a %s setup", $self->opts->role, $self->{fgHaSystemMode}); - if ($self->opts->role eq "active" && $self->{iammaster}) { - $self->add_ok(); - } elsif ($self->opts->role eq "passive" && ! $self->{iammaster}) { + $self->{myrole} = $self->{fgHaSystemMode} eq "standalone" ? "master" : + $self->{fgHaStatsMasterSerial} eq $self->{fnSysSerial} ? "master" : "slave"; + $self->add_info(sprintf "this is a %s node in a %s setup", $self->{myrole}, $self->{fgHaSystemMode}); + if ($self->opts->role ne "master" and $self->opts->role ne "slave") { + $self->add_unknown('role must be master or slave'); + } elsif ($self->opts->role eq $self->{myrole}) { $self->add_ok(); } else { $self->add_critical(); diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Fortigate/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Fortigate/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Fortigate/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Fortigate/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Fortigate/Component/SensorSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Fortigate/Component/SensorSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Fortigate/Component/SensorSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Fortigate/Component/SensorSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Foundry.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Foundry.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Foundry.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Foundry.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Foundry/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Foundry/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Foundry/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Foundry/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Foundry/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Foundry/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Foundry/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Foundry/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Foundry/Component/FanSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Foundry/Component/FanSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Foundry/Component/FanSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Foundry/Component/FanSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Foundry/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Foundry/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Foundry/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Foundry/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Foundry/Component/ModuleSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Foundry/Component/ModuleSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Foundry/Component/ModuleSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Foundry/Component/ModuleSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Foundry/Component/PowersupplySubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Foundry/Component/PowersupplySubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Foundry/Component/PowersupplySubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Foundry/Component/PowersupplySubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Foundry/Component/SLBSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Foundry/Component/SLBSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Foundry/Component/SLBSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Foundry/Component/SLBSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Foundry/Component/TemperatureSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Foundry/Component/TemperatureSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Foundry/Component/TemperatureSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Foundry/Component/TemperatureSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HH3C.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HH3C.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HH3C.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HH3C.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HH3C/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HH3C/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HH3C/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HH3C/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HH3C/Component/EntitySubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HH3C/Component/EntitySubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HH3C/Component/EntitySubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HH3C/Component/EntitySubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HH3C/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HH3C/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HH3C/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HH3C/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HH3C/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HH3C/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HH3C/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HH3C/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HOSTRESOURCESMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HOSTRESOURCESMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HOSTRESOURCESMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HOSTRESOURCESMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/ClockSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/ClockSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/ClockSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/ClockSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/DeviceSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/DeviceSubsystem.pm similarity index 92% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/DeviceSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/DeviceSubsystem.pm index 7a15a89..94f9fe6 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/DeviceSubsystem.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/DeviceSubsystem.pm @@ -54,9 +54,12 @@ sub check { if ($self->{hrDeviceStatus} =~ /(warning|testing)/) { $self->add_warning(); } elsif ($self->{hrDeviceStatus} =~ /down/ && ! ( + # cd, sd, ramdisk fliegen raus. neuerdings auch nfs, weil die + # zum umounten zu bloed sind. $self->{hrDeviceType} eq 'hrDeviceDiskStorage' && $self->{hrDeviceDescr} eq 'sysfs' || $self->{hrDeviceType} eq 'hrDeviceDiskStorage' && $self->{hrDeviceDescr} eq 'sunrpc' || $self->{hrDeviceType} eq 'hrDeviceDiskStorage' && $self->{hrDeviceDescr} =~ /CDROM/ || + $self->{hrDeviceType} eq 'hrDeviceDiskStorage' && $self->{hrDeviceDescr} =~ /:\// || $self->{hrDeviceType} eq 'hrDeviceNetwork' && $self->{hrDeviceDescr} eq 'sit0' )) { $self->add_critical(); diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/DiskSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/DiskSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/DiskSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/DiskSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/UptimeSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/UptimeSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/UptimeSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HOSTRESOURCESMIB/Component/UptimeSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HP.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HP.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HP.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HP.pm diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HP/Procurve.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HP/Procurve.pm new file mode 100644 index 0000000..c7452a2 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HP/Procurve.pm @@ -0,0 +1,39 @@ +package Classes::HP::Procurve; +our @ISA = qw(Classes::HP); +use strict; + +sub init { + my ($self) = @_; + if ($self->mode =~ /device::hardware::health/) { + $self->analyze_and_check_environmental_subsystem("Classes::HP::Procurve::Component::EnvironmentalSubsystem"); + if ($self->implements_mib("ENTITY-SENSOR-MIB")) { + $self->{components}->{senvironmental_subsystem} = Classes::ENTITYSENSORMIB::Component::EnvironmentalSubsystem->new(); + @{$self->{components}->{senvironmental_subsystem}->{sensors}} = grep { + # ENTITYSENSORMIB-sensoren fliegen raus, wenn sie vorher schon per HP-Mib gefunden wurden. + my $sensor = $_; + my $unique = 1; + foreach (@{$self->{components}->{environmental_subsystem}->{components}->{sensor_subsystem}->{sensors}}) { + if (exists $_->{entPhysicalIndex} and $sensor->{entPhysicalIndex} == $_->{entPhysicalIndex}) { + # schleich de, du grippl, du elendicher! + $unique = 0; + last; + } + } + $unique; + } @{$self->{components}->{senvironmental_subsystem}->{sensors}}; + + $self->{components}->{senvironmental_subsystem}->check(); + # vergleichen: entPhysicalIndex entity id mit hpSystemAirEntPhysicalIndex + $self->{components}->{senvironmental_subsystem}->dump() + if $self->opts->verbose >= 2; + } + $self->reduce_messages_short('environmental hardware working fine'); + } elsif ($self->mode =~ /device::hardware::load/) { + $self->analyze_and_check_cpu_subsystem("Classes::HP::Procurve::Component::CpuSubsystem"); + } elsif ($self->mode =~ /device::hardware::memory/) { + $self->analyze_and_check_mem_subsystem("Classes::HP::Procurve::Component::MemSubsystem"); + } else { + $self->no_such_mode(); + } +} + diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HP/Procurve/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HP/Procurve/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HP/Procurve/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HP/Procurve/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HP/Procurve/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HP/Procurve/Component/EnvironmentalSubsystem.pm similarity index 90% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HP/Procurve/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HP/Procurve/Component/EnvironmentalSubsystem.pm index ccc96a1..99424dd 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HP/Procurve/Component/EnvironmentalSubsystem.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HP/Procurve/Component/EnvironmentalSubsystem.pm @@ -4,7 +4,7 @@ use strict; sub init { my ($self) = @_; - if ($self->implements_mib('HP-ICF-CHASSIS-MIB')) { + if ($self->implements_mib('HP-ICF-CHASSIS')) { $self->analyze_and_check_sensor_subsystem('Classes::HP::Procurve::Component::SensorSubsystem'); } else { $self->analyze_and_check_environmental_subsystem("Classes::ENTITYSENSORMIB::Component::EnvironmentalSubsystem"); diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HP/Procurve/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HP/Procurve/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HP/Procurve/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HP/Procurve/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HP/Procurve/Component/SensorSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HP/Procurve/Component/SensorSubsystem.pm new file mode 100644 index 0000000..7cea772 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HP/Procurve/Component/SensorSubsystem.pm @@ -0,0 +1,90 @@ +package Classes::HP::Procurve::Component::SensorSubsystem; +our @ISA = qw(Monitoring::GLPlugin::SNMP::Item); +use strict; + +sub init { + my ($self) = @_; + $self->get_snmp_tables('HP-ICF-CHASSIS', [ + ['sensors', 'hpicfSensorTable', 'Classes::HP::Procurve::Component::SensorSubsystem::Sensor'], + ['airtemps', 'hpSystemAirTempTable', 'Classes::HP::Procurve::Component::SensorSubsystem::AirTemp'], + ]); + push(@{$self->{sensors}}, @{$self->{airtemps}}); + delete $self->{airtemps}; +} + +sub xcheck { + my ($self) = @_; + $self->add_info('checking sensors'); + if (scalar (@{$self->{sensors}}) == 0) { + $self->add_ok('no sensors'); + } else { + foreach (@{$self->{sensors}}) { + $_->check(); + } + } + foreach (@{$self->{airtemps}}) { + $_->check(); + } +} + + +package Classes::HP::Procurve::Component::SensorSubsystem::AirTemp; +our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); +use strict; + +sub finish { + my ($self) = @_; + foreach (qw(hpSystemAirCurrentTemp hpSystemAirMaxTemp hpSystemAirMinTemp + hpSystemAirThresholdTemp)) { + if (defined $self->{$_}) { + $self->{$_} =~ s/C//g; + } + } + $self->{entPhysicalIndex} = $self->{hpSystemAirEntPhysicalIndex}; +} + +sub check { + my ($self) = @_; + $self->add_info(sprintf 'temperature %s is %sC', + $self->{hpSystemAirName}, + $self->{hpSystemAirCurrentTemp}); + my $label = "temp_".$self->{hpSystemAirName}; + $self->set_thresholds(metric => $label, + warning => $self->{hpSystemAirThresholdTemp}, + critical => $self->{hpSystemAirThresholdTemp} + 10, + ); + $self->add_message($self->check_thresholds( + metric => $label, + value => $self->{hpSystemAirCurrentTemp})); + if ($self->{hpSystemAirOverTemp} eq "yes") { + $self->add_critical("too hot"); + } + $self->add_perfdata( + label => $label, + value => $self->{hpSystemAirCurrentTemp} + ); +} + + +package Classes::HP::Procurve::Component::SensorSubsystem::Sensor; +our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); +use strict; + +sub check { + my ($self) = @_; + $self->add_info(sprintf 'sensor %s (%s) is %s', + $self->{hpicfSensorIndex}, + $self->{hpicfSensorDescr}, + $self->{hpicfSensorStatus}); + if ($self->{hpicfSensorStatus} eq "notPresent") { + } elsif ($self->{hpicfSensorStatus} eq "bad") { + $self->add_critical(); + } elsif ($self->{hpicfSensorStatus} eq "warning") { + $self->add_warning(); + } elsif ($self->{hpicfSensorStatus} eq "good") { + #$self->add_ok(); + } else { + $self->add_unknown(); + } +} + diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HSRP.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HSRP.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HSRP.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HSRP.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HSRP/Component/HSRPSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HSRP/Component/HSRPSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HSRP/Component/HSRPSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/HSRP/Component/HSRPSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Huawei.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Huawei.pm new file mode 100644 index 0000000..b4a782b --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Huawei.pm @@ -0,0 +1,26 @@ +package Classes::Huawei; +our @ISA = qw(Classes::Device); +use strict; + +sub init { + my ($self) = @_; + my $sysobj = $self->get_snmp_object('MIB-2-MIB', 'sysObjectID', 0); + if ($sysobj =~ /^\.*1\.3\.6\.1\.4\.1\.2011\.2\.239/) { + bless $self, 'Classes::Huawei::CloudEngine'; + $self->debug('using Classes::Huawei::CloudEngine'); + } + if (ref($self) ne "Classes::Huawei") { + $self->init(); + } else { + if ($self->mode =~ /device::hardware::health/) { + $self->analyze_and_check_environmental_subsystem("Classes::Huawei::Component::EnvironmentalSubsystem"); + } elsif ($self->mode =~ /device::hardware::load/) { + $self->analyze_and_check_cpu_subsystem("Classes::Huawei::Component::CpuSubsystem"); + } elsif ($self->mode =~ /device::hardware::memory/) { + $self->analyze_and_check_mem_subsystem("Classes::Huawei::Component::MemSubsystem"); + } else { + $self->no_such_mode(); + } + } +} + diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Huawei/CloudEngine.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Huawei/CloudEngine.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Huawei/CloudEngine.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Huawei/CloudEngine.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Huawei/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Huawei/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Huawei/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Huawei/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Huawei/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Huawei/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Huawei/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Huawei/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Huawei/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Huawei/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Huawei/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Huawei/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/IFMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/IFMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/IFMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/IFMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/IFMIB/Component/InterfaceSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/IFMIB/Component/InterfaceSubsystem.pm similarity index 89% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/IFMIB/Component/InterfaceSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/IFMIB/Component/InterfaceSubsystem.pm index 2642a2d..c0a8cbb 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/IFMIB/Component/InterfaceSubsystem.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/IFMIB/Component/InterfaceSubsystem.pm @@ -11,6 +11,8 @@ sub init { my @ethertable_columns = qw(); my @ethertablehc_columns = qw(); my @rmontable_columns = qw(); + my @ipaddress_columns = qw(); + $self->implements_mib('INET-ADDRESS-MIB'); if ($self->mode =~ /device::interfaces::list/) { } elsif ($self->mode =~ /device::interfaces::complete/) { push(@iftable_columns, qw( @@ -88,20 +90,20 @@ sub init { @ethertable_columns = grep { my $ec = $_; grep { - $ec eq $_; - } @reports; + $ec eq $_; + } @reports; } @ethertable_columns; @ethertablehc_columns = grep { my $ec = $_; grep { - $ec eq $_; - } @reports; + $ec eq $_; + } @reports; } @ethertablehc_columns; @rmontable_columns = grep { my $ec = $_; grep { - $ec eq $_; - } @reports; + $ec eq $_; + } @reports; } @rmontable_columns; } if (grep /dot3HCStatsFCSErrors/, @ethertablehc_columns) { @@ -156,6 +158,14 @@ sub init { $self->opts->name && $self->opts->name eq '_adminup_' ? 1 : 0; my $only_oper_up = $self->opts->name && $self->opts->name eq '_operup_' ? 1 : 0; + # --name '(lan|wan|_adminup_)' + # alle mit match auf lan|wan, und davon dann die mit admin up + my $plus_admin_up = + $self->opts->name && ! $only_admin_up && + $self->opts->name =~ /_adminup_/ ? 1 : 0; + my $plus_oper_up = + $self->opts->name && ! $only_oper_up && + $self->opts->name =~ /_operup_/ ? 1 : 0; if ($only_admin_up || $only_oper_up) { $self->override_opt('name', undef); $self->override_opt('drecksptkdb', undef); @@ -174,6 +184,8 @@ sub init { 'IFMIB', 'ifTable+ifXTable', \@indices, \@iftable_columns)) { next if $only_admin_up && $_->{ifAdminStatus} ne 'up'; next if $only_oper_up && $_->{ifOperStatus} ne 'up'; + next if $plus_admin_up && $_->{ifAdminStatus} ne 'up'; + next if $plus_oper_up && $_->{ifOperStatus} ne 'up'; $self->make_ifdescr_unique($_); $self->enrich_interface_attributes($_); my $interface_class = ref($self)."::Interface"; @@ -306,6 +318,54 @@ sub init { } } } + if ($self->opts->report =~ /^(\w+)\+address/) { + $self->override_opt('report', $1); + # flat_indices, weil die Schluesselelemente ipAddressAddrType+ipAddressAddr + # not-accessible sind und im Index stecken. + if (scalar(@{$self->{interfaces}}) > 0) { + my $interfaces_by_index = {}; + map { + $interfaces_by_index->{$_->{ifIndex}} = $_; + } @{$self->{interfaces}}; + my $indexpattern = join('|', map { + $_->{ifIndex} + } @{$self->{interfaces}}); + $self->override_opt('name', '^('.$indexpattern.')$'); + $self->override_opt('drecksptkdb', '^('.$indexpattern.')$'); + $self->override_opt('regexp', 1); + + $self->get_snmp_objects('IP-MIB', qw(ipv4InterfaceTableLastChange ipv6InterfaceTableLastChange)); + $self->{ipv4InterfaceTableLastChange} ||= 0; + $self->{ipv6InterfaceTableLastChange} ||= 0; + $self->{ipv46InterfaceTableLastChange} = + $self->{ipv4InterfaceTableLastChange} > $self->{ipv6InterfaceTableLastChange} ? + $self->{ipv4InterfaceTableLastChange} : $self->{ipv6InterfaceTableLastChange}; + $self->{bootTime} = time - $self->uptime(); + $self->{ipAddressTableLastChange} = $self->{bootTime} + $self->timeticks($self->{ipv46InterfaceTableLastChange} / 100); + + $self->update_entry_cache(0, 'IP-MIB', 'ipAddressTable', 'ipAddressIfIndex', $self->{ipAddressTableLastChange}); + my @address_indices = $self->get_cache_indices('IP-MIB', 'ipAddressTable', 'ipAddressIfIndex'); + $self->{addresses} = []; + if (@address_indices) { + # es gibt adressen zu den ausgewaehlten interfaces + foreach ($self->get_snmp_table_objects_with_cache( + 'IP-MIB', 'ipAddressTable', 'ipAddressIfIndex', ['ipAddressIfIndex'], 0)) { + my $address = Classes::IFMIB::Component::InterfaceSubsystem::Address->new(%{$_}); + push(@{$self->{addresses}}, $address); + if (exists $interfaces_by_index->{$address->{ipAddressIfIndex}}) { + if (exists $interfaces_by_index->{$address->{ipAddressIfIndex}}->{ifAddresses}) { + push(@{$interfaces_by_index->{$address->{ipAddressIfIndex}}->{ifAddresses}}, $address->{ipAddressAddr}); + } else { + $interfaces_by_index->{$address->{ipAddressIfIndex}}->{ifAddresses} = [$address->{ipAddressAddr}]; + } + } + } + } + foreach (@{$self->{interfaces}}) { + $_->{ifAddresses} = exists $_->{ifAddresses} ? join(", ", @{$_->{ifAddresses}}) : ""; + } + } + } } sub check { @@ -409,6 +469,7 @@ sub check { sub update_interface_cache { my ($self, $force) = @_; my $statefile = $self->create_interface_cache_file(); + $self->bulk_is_baeh(10); $self->get_snmp_objects('IFMIB', qw(ifTableLastChange)); # "The value of sysUpTime at the time of the last creation or # deletion of an entry in the ifTable. If the number of @@ -760,17 +821,31 @@ sub init { } $self->{ifSpeedText} =~ s/\.00//g; } elsif ($self->mode =~ /device::interfaces::uptime/) { - $self->{ifLastChangeRaw} = $self->{ifLastChange} / 100; - # recalc ticks - $self->{ifLastChange} = time - $self->uptime() + $self->{ifLastChange} / 100; - $self->{ifLastChangeHuman} = scalar localtime $self->{ifLastChange}; - $self->{ifDuration} = time - $self->{ifLastChange}; - $self->{ifDurationMinutes} = $self->{ifDuration} / 60; # minutes - # wenn sysUptime ueberlaeuft, dann wird's schwammig. Denn dann kann + $self->{ifLastChangeRaw} = $self->{ifLastChange}; + $self->{ifLastChange} = time - + $self->ago_sysuptime($self->{ifLastChange}); + # Alter Text: + # Wenn sysUptime ueberlaeuft, dann wird's schwammig. Denn dann kann # ich nicht sagen, ob ein ifLastChange ganz am Anfang passiert ist, # unmittelbar nach dem Booten, oder grad eben vor drei Minuten, als # der Ueberlauf stattfand. Ergo ist dieser Mode nach einer Uptime von # 497 Tagen nicht mehr brauchbar. + # Und tatsaechlich gibt es Typen die lassen ihre Switche in den + # Filialen ueber ein Jahr durchlaufen und machen dann reihenweise Tickets auf. + # boot ifchange1 overflow ifchange2 + # | | | | + # |---------------------------------^---------------------------------^----- + # | + # check + # Zum Zeitpunkt des Checks ist ifchange1 groesser als die sysUptime + # Damit wird ifLastChange negativ. + # Eine Chance gibts dann noch, man geht davon aus, dass das der + # einzige Overflow war (tatsaechlich koennten ja mehrere passiert sein) + # Also: max(32bit) - ifchange1 + sysUptime + # ago_sysuptime fackelt das ganz gut ab. + $self->{ifLastChangeHuman} = scalar localtime $self->{ifLastChange}; + $self->{ifDuration} = time - $self->{ifLastChange}; + $self->{ifDurationMinutes} = $self->{ifDuration} / 60; # minutes } return $self; } @@ -821,10 +896,11 @@ sub init_etherstats { sub check { my ($self) = @_; - my $full_descr = sprintf "%s%s", + my $full_descr = sprintf "%s%s%s", $self->{ifDescr}, $self->{ifAlias} && $self->{ifAlias} ne $self->{ifDescr} ? - " (alias ".$self->{ifAlias}.")" : ""; + " (alias ".$self->{ifAlias}.")" : "", + $self->{ifAddresses} ? " (addresses ".$self->{ifAddresses}.")" : ""; if ($self->mode =~ /device::interfaces::complete/) { # uglatto, but $self->mode is an lvalue $Monitoring::GLPlugin::mode = "device::interfaces::operstatus"; @@ -1247,10 +1323,11 @@ sub init_etherstats { sub check { my ($self) = @_; - my $full_descr = sprintf "%s%s", + my $full_descr = sprintf "%s%s%s", $self->{ifDescr}, $self->{ifAlias} && $self->{ifAlias} ne $self->{ifDescr} ? - " (alias ".$self->{ifAlias}.")" : ""; + " (alias ".$self->{ifAlias}.")" : "", + $self->{ifAddresses} ? " (addresses ".$self->{ifAddresses}.")" : ""; if ($self->mode =~ /device::interfaces::operstatus/) { $self->SUPER::check(); } elsif ($self->mode =~ /device::interfaces::duplex/) { @@ -1260,3 +1337,36 @@ sub check { } } + +package Classes::IFMIB::Component::InterfaceSubsystem::Address; +our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); +use strict; + +sub finish { + my ($self) = @_; + # INDEX { ipAddressAddrType, ipAddressAddr } + my @tmp_indices = @{$self->{indices}}; + my $last_tmp = scalar(@tmp_indices) - 1; + # .1.3.6.1.2.1.4.24.7.1.7.1.4.0.0.0.0.32.2.0.0.1.4.10.208.143.81 = INTEGER: 25337 + # IP-FORWARD-MIB::inetCidrRouteIfIndex.ipv4."0.0.0.0".32.2.0.0.ipv4."10.208.143.81" = INTEGER: 25337 + # Frag mich jetzt keiner, warum dem ipv4 ein 1.4 entspricht. Ich kann + # jedenfalls der IP-FORWARD-MIB bzw. RFC4001 nicht entnehmen, dass fuer + # InetAddressType zwei Stellen des Index vorgesehen sind. Zumal nur die + # erste Stelle für die Textual Convention relevant ist. Aergert mich ziemlich, + # daß jeder bloede /usr/bin/snmpwalk das besser hinbekommt als ich. + # Was dazugelernt: 1=InetAddressType, 4=gehoert zur folgenden InetAddressIPv4 + # und gibt die Laenge an. Noch mehr gelernt: wenn eine Table mit Integer und + # Octet String indiziert ist, dann ist die Groeße des Octet String Bestandteil + # der OID. Diese _kann_ weggelassen werden für den _letzten_ Index. Der ist + # halt dann so lang wie der Rest der OID. + # Mit einem IMPLIED-Keyword koennte die Laenge auch weggelassen werden. + + $self->{ipAddressAddrType} = $self->mibs_and_oids_definition( + 'INET-ADDRESS-MIB', 'InetAddressType', $tmp_indices[0]); + shift @tmp_indices; + + $self->{ipAddressAddr} = $self->mibs_and_oids_definition( + 'INET-ADDRESS-MIB', 'InetAddressMaker', + $self->{ipAddressAddrType}, @tmp_indices); +} + diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/IFMIB/Component/LinkAggregation.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/IFMIB/Component/LinkAggregation.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/IFMIB/Component/LinkAggregation.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/IFMIB/Component/LinkAggregation.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/IFMIB/Component/StackSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/IFMIB/Component/StackSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/IFMIB/Component/StackSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/IFMIB/Component/StackSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/IPFORWARDMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/IPFORWARDMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/IPFORWARDMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/IPFORWARDMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/IPFORWARDMIB/Component/RoutingSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/IPFORWARDMIB/Component/RoutingSubsystem.pm new file mode 100644 index 0000000..b334bd6 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/IPFORWARDMIB/Component/RoutingSubsystem.pm @@ -0,0 +1,224 @@ +package Classes::IPFORWARDMIB::Component::RoutingSubsystem; +our @ISA = qw(Monitoring::GLPlugin::SNMP::Item); +use strict; +# plugins-scripts/check_nwc_health --mode list-routes --snmpwalk walks/simon.snmpwalk +# ipRouteTable 1.3.6.1.2.1.4.21 +# replaced by +# ipForwardTable 1.3.6.1.2.1.4.24.2 +# deprecated by +# ipCidrRouteTable 1.3.6.1.2.1.4.24.4 +# deprecated by the ip4/6-neutral +# inetCidrRouteTable 1.3.6.1.2.1.4.24.7 + +sub init { + my ($self) = @_; + $self->implements_mib('INET-ADDRESS-MIB'); + $self->get_snmp_tables('IP-FORWARD-MIB', [ + ['routes', 'ipCidrRouteTable', 'Classes::IPFORWARDMIB::Component::RoutingSubsystem::ipCidrRoute', + sub { + my ($o) = @_; + if ($o->opts->name && $o->opts->name =~ /\//) { + my ($dest, $cidr) = split(/\//, $o->opts->name); + my $bits = ( 2 ** (32 - $cidr) ) - 1; + my ($full_mask) = unpack("N", pack("C4", split(/\./, '255.255.255.255'))); + my $netmask = join('.', unpack("C4", pack("N", ($full_mask ^ $bits)))); + return defined $o->{ipCidrRouteDest} && ( + $o->filter_namex($dest, $o->{ipCidrRouteDest}) && + $o->filter_namex($netmask, $o->{ipCidrRouteMask}) && + $o->filter_name2($o->{ipCidrRouteNextHop}) + ); + } else { + return defined $o->{ipCidrRouteDest} && ( + $o->filter_name($o->{ipCidrRouteDest}) && + $o->filter_name2($o->{ipCidrRouteNextHop}) + ); + } + } + ], + ['routes', 'inetCidrRouteTable', 'Classes::IPFORWARDMIB::Component::RoutingSubsystem::inetCidrRoute', + sub { + my ($o) = @_; + if ($o->opts->name && $o->opts->name =~ /\//) { + my ($dest, $cidr) = split(/\//, $o->opts->name); + return defined $o->{inetCidrRouteDest} && ( + $o->filter_namex($dest, $o->{inetCidrRouteDest}) && + $o->filter_namex($cidr, $o->{inetCidrRoutePfxLen}) && + $o->filter_name2($o->{inetCidrRouteNextHop}) + ); + } else { + return defined $o->{inetCidrRouteDest} && ( + $o->filter_name($o->{inetCidrRouteDest}) && + $o->filter_name2($o->{inetCidrRouteNextHop}) + ); + } + } + ], + ]); + # deprecated + #$self->get_snmp_tables('IP-FORWARD-MIB', [ + # ['routes', 'ipForwardTable', 'Classes::IPFORWARDMIB::Component::RoutingSubsystem::Route' ], + #]); + #$self->get_snmp_tables('IP-MIB', [ + # ['routes', 'ipRouteTable', 'Classes::IPFORWARDMIB::Component::RoutingSubsystem::Route' ], + #]); + # + # Hundsglump varreckts!!!! + # Es gibt so Kandidaten, bei denen stecken die v6-Routen in der neuen + # inetCidrRouteTable (was ja korrekt ist) und die v4-Routen in der + # ipCidrRouteTable. Das war der Grund, weshalb beim get_snmp_tables + # beide abgefragt werden und nicht wie frueher ein Fallback auf von inet + # auf ip stattfindet, falls die inet leer ist. + # Korrekt waere zumindest meiner Ansicht nach, wenn sowohl v4 als auch v6 + # in inetCidrRouteTable stuenden. Solche gibt es tatsaechlich auch. + # Aber dank der Hornochsen bei Cisco mit ihrer o.g. Vorgehensweise darf ich + # jetzt die Doubletten rausfieseln. + my $found = {}; + @{$self->{routes}} = grep { + if (exists $found->{$_->id()}) { + 0; + } else { + $found->{$_->id()} = 1; + 1; + } + } @{$self->{routes}}; +} + +sub check { + my ($self) = @_; + $self->add_info('checking routes'); + if ($self->mode =~ /device::routes::list/) { + foreach (@{$self->{routes}}) { + $_->list(); + } + $self->add_ok("have fun"); + } elsif ($self->mode =~ /device::routes::count/) { + if (! $self->opts->name && $self->opts->name2) { + $self->add_info(sprintf "found %d routes via next hop %s", + scalar(@{$self->{routes}}), $self->opts->name2); + } elsif ($self->opts->name && ! $self->opts->name2) { + $self->add_info(sprintf "found %d routes to dest %s", + scalar(@{$self->{routes}}), $self->opts->name); + } elsif ($self->opts->name && $self->opts->name2) { + $self->add_info(sprintf "found %d routes to dest %s via hop %s", + scalar(@{$self->{routes}}), $self->opts->name, $self->opts->name2); + } else { + $self->add_info(sprintf "found %d routes", + scalar(@{$self->{routes}})); + } + $self->set_thresholds(warning => '1:', critical => '1:'); + $self->add_message($self->check_thresholds(scalar(@{$self->{routes}}))); + $self->add_perfdata( + label => 'routes', + value => scalar(@{$self->{routes}}), + ); + } elsif ($self->mode =~ /device::routes::exists/) { + # geht auch mit count-routes. irgendwann mal.... + $self->no_such_mode(); + } +} + + +package Classes::IPFORWARDMIB::Component::RoutingSubsystem::Route; +our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); + +package Classes::IPFORWARDMIB::Component::RoutingSubsystem::ipRoute; +our @ISA = qw(Classes::IPFORWARDMIB::Component::RoutingSubsystem::Route); + +package Classes::IPFORWARDMIB::Component::RoutingSubsystem::ipCidrRoute; +our @ISA = qw(Classes::IPFORWARDMIB::Component::RoutingSubsystem::Route); + +sub finish { + my ($self) = @_; + if (! defined $self->{ipCidrRouteDest}) { + # we can reconstruct a few attributes from the index + # one customer only made ipCidrRouteStatus visible + $self->{ipCidrRouteDest} = join(".", map { $self->{indices}->[$_] } (0, 1, 2, 3)); + $self->{ipCidrRouteMask} = join(".", map { $self->{indices}->[$_] } (4, 5, 6, 7)); + $self->{ipCidrRouteTos} = $self->{indices}->[8]; + $self->{ipCidrRouteNextHop} = join(".", map { $self->{indices}->[$_] } (9, 10, 11, 12)); + $self->{ipCidrRouteType} = "other"; # maybe not, who cares + $self->{ipCidrRouteProto} = "other"; # maybe not, who cares + } +} + +sub list { + my ($self) = @_; + printf "%16s %16s %16s %11s %7s\n", + $self->{ipCidrRouteDest}, $self->{ipCidrRouteMask}, + $self->{ipCidrRouteNextHop}, $self->{ipCidrRouteProto}, + $self->{ipCidrRouteType}; +} + +sub id { + my ($self) = @_; + return sprintf "%s-%s", $self->{ipCidrRouteDest}, + $self->{ipCidrRouteNextHop}; +} + +package Classes::IPFORWARDMIB::Component::RoutingSubsystem::inetCidrRoute; +our @ISA = qw(Classes::IPFORWARDMIB::Component::RoutingSubsystem::Route); + +sub finish { + my ($self) = @_; + # http://www.mibdepot.com/cgi-bin/vendor_index.cgi?r=ietf_rfcs + # INDEX { inetCidrRouteDestType, inetCidrRouteDest, inetCidrRoutePfxLen, inetCidrRoutePolicy, inetCidrRouteNextHopType, inetCidrRouteNextHop } + my @tmp_indices = @{$self->{indices}}; + my $last_tmp = scalar(@tmp_indices) - 1; + # .1.3.6.1.2.1.4.24.7.1.7.1.4.0.0.0.0.32.2.0.0.1.4.10.208.143.81 = INTEGER: 25337 + # IP-FORWARD-MIB::inetCidrRouteIfIndex.ipv4."0.0.0.0".32.2.0.0.ipv4."10.208.143.81" = INTEGER: 25337 + # Frag mich jetzt keiner, warum dem ipv4 ein 1.4 entspricht. Ich kann + # jedenfalls der IP-FORWARD-MIB bzw. RFC4001 nicht entnehmen, dass fuer + # InetAddressType zwei Stellen des Index vorgesehen sind. Zumal nur die + # erste Stelle für die Textual Convention relevant ist. Aergert mich ziemlich, + # daß jeder bloede /usr/bin/snmpwalk das besser hinbekommt als ich. + # Was dazugelernt: 1=InetAddressType, 4=gehoert zur folgenden InetAddressIPv4 + # und gibt die Laenge an. Noch mehr gelernt: wenn eine Table mit Integer und + # Octet String indiziert ist, dann ist die Groeße des Octet String Bestandteil + # der OID. Diese _kann_ weggelassen werden für den _letzten_ Index. Der ist + # halt dann so lang wie der Rest der OID. + # Mit einem IMPLIED-Keyword koennte die Laenge auch weggelassen werden. + + $self->{inetCidrRouteDestType} = $self->mibs_and_oids_definition( + 'INET-ADDRESS-MIB', 'InetAddressType', $tmp_indices[0]); + shift @tmp_indices; + + $self->{inetCidrRouteDest} = $self->mibs_and_oids_definition( + 'INET-ADDRESS-MIB', 'InetAddressMaker', + $self->{inetCidrRouteDestType}, @tmp_indices); + + # laenge plus adresse weg + splice @tmp_indices, 0, $tmp_indices[0]+1; + + $self->{inetCidrRoutePfxLen} = shift @tmp_indices; + $self->{inetCidrRoutePolicy} = join(".", splice @tmp_indices, 0, $tmp_indices[0]+1); + + $self->{inetCidrRouteNextHopType} = $self->mibs_and_oids_definition( + 'INET-ADDRESS-MIB', 'InetAddressType', $tmp_indices[0]); + shift @tmp_indices; + + $self->{inetCidrRouteNextHop} = $self->mibs_and_oids_definition( + 'INET-ADDRESS-MIB', 'InetAddressMaker', + $self->{inetCidrRouteNextHopType}, @tmp_indices); + + if ($self->{inetCidrRouteDestType} eq "ipv4") { + my $bits = ( 2 ** (32 - $self->{inetCidrRoutePfxLen}) ) - 1; + my ($full_mask) = unpack("N", pack("C4", split(/\./, '255.255.255.255'))); + my $netmask = join('.', unpack("C4", pack("N", ($full_mask ^ $bits)))); + $self->{inetCidrRouteMask} = $netmask; + } + +} + +sub list { + my ($self) = @_; + printf "%16s %16s %16s %11s %7s\n", + $self->{inetCidrRouteDest}, $self->{inetCidrRoutePfxLen}, + $self->{inetCidrRouteNextHop}, $self->{inetCidrRouteProto}, + $self->{inetCidrRouteType}; +} + +sub id { + my ($self) = @_; + return sprintf "%s-%s", $self->{inetCidrRouteDest}, + $self->{inetCidrRouteNextHop}; +} diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/IPMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/IPMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/IPMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/IPMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/IPMIB/Component/RoutingSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/IPMIB/Component/RoutingSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/IPMIB/Component/RoutingSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/IPMIB/Component/RoutingSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/IVE.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/IVE.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/IVE.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/IVE.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/IVE/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/IVE/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/IVE/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/IVE/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/IVE/Component/DiskSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/IVE/Component/DiskSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/IVE/Component/DiskSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/IVE/Component/DiskSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/IVE/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/IVE/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/IVE/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/IVE/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/IVE/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/IVE/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/IVE/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/IVE/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/IVE/Component/UserSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/IVE/Component/UserSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/IVE/Component/UserSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/IVE/Component/UserSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/JunOS.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/JunOS.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/JunOS.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/JunOS.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/JunOS/Component/BgpSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/JunOS/Component/BgpSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/JunOS/Component/BgpSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/JunOS/Component/BgpSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/NetScreen.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/NetScreen.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/NetScreen.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/NetScreen.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/NetScreen/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/NetScreen/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/NetScreen/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/NetScreen/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/NetScreen/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/NetScreen/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/NetScreen/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/NetScreen/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/NetScreen/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/NetScreen/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/NetScreen/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/NetScreen/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/NetScreen/Component/VsdSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/NetScreen/Component/VsdSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/NetScreen/Component/VsdSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/NetScreen/Component/VsdSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/SRX.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/SRX.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/SRX.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/SRX.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/SRX/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/SRX/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/SRX/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/SRX/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/SRX/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/SRX/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/SRX/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/SRX/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/SRX/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/SRX/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Juniper/SRX/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Juniper/SRX/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/LMSENSORSMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/LMSENSORSMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/LMSENSORSMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/LMSENSORSMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/LMSENSORSMIB/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/LMSENSORSMIB/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/LMSENSORSMIB/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/LMSENSORSMIB/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/LMSENSORSMIB/Component/FanSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/LMSENSORSMIB/Component/FanSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/LMSENSORSMIB/Component/FanSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/LMSENSORSMIB/Component/FanSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/LMSENSORSMIB/Component/TemperatureSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/LMSENSORSMIB/Component/TemperatureSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/LMSENSORSMIB/Component/TemperatureSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/LMSENSORSMIB/Component/TemperatureSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Lancom.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Lancom.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Lancom.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Lancom.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Lancom/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Lancom/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Lancom/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Lancom/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Lancom/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Lancom/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Lancom/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Lancom/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Lancom/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Lancom/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Lancom/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Lancom/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Lantronix.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Lantronix.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Lantronix.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Lantronix.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Lantronix/SLS.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Lantronix/SLS.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Lantronix/SLS.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Lantronix/SLS.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/MEOS.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/MEOS.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/MEOS.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/MEOS.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Netgear.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Netgear.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Netgear.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Netgear.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Nortel.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Nortel.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Nortel.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Nortel.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Nortel/S5.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Nortel/S5.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Nortel/S5.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Nortel/S5.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Nortel/S5/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Nortel/S5/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Nortel/S5/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Nortel/S5/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Nortel/S5/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Nortel/S5/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Nortel/S5/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Nortel/S5/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Nortel/S5/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Nortel/S5/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Nortel/S5/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Nortel/S5/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/OSPF.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/OSPF.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/OSPF.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/OSPF.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/OSPF/Component/NeighborSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/OSPF/Component/NeighborSubsystem.pm similarity index 81% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/OSPF/Component/NeighborSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/OSPF/Component/NeighborSubsystem.pm index eb8916e..f220bd0 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/OSPF/Component/NeighborSubsystem.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/OSPF/Component/NeighborSubsystem.pm @@ -5,22 +5,51 @@ use strict; sub init { my ($self) = @_; $self->get_snmp_tables('OSPF-MIB', [ - ['nbr', 'ospfNbrTable', 'Classes::OSPF::Component::NeighborSubsystem::Neighbor', , sub { my ($o) = @_; return $self->filter_name($o->{ospfNbrIpAddr}) && $self->filter_name2($o->{ospfNbrRtrId}) }], + ['nbr', 'ospfNbrTable', 'Classes::OSPF::Component::NeighborSubsystem::Neighbor', sub { my ($o) = @_; return $self->filter_name($o->{ospfNbrIpAddr}) && $self->filter_name2($o->{ospfNbrRtrId}) }], ]); eval { $self->get_snmp_tables('OSPFV3-MIB', [ - ['nbr3', 'ospfv3NbrTable', 'Classes::OSPF::Component::NeighborSubsystem::V3Neighbor', , sub { my ($o) = @_; return 1; $self->filter_name($o->{ospfNbrIpAddr}) && $self->filter_name2($o->{ospfNbrRtrId}) }], + ['nbr3', 'ospfv3NbrTable', 'Classes::OSPF::Component::NeighborSubsystem::V3Neighbor', sub { + my ($o) = @_; + return ($self->filter_name($o->compact_v6($o->{ospfv3NbrAddress})) && $self->filter_name2($o->{ospfv3NbrRtrId}) || + $self->filter_name($o->{ospfv3NbrAddress}) && $self->filter_name2($o->{ospfv3NbrRtrId})); + }], ]); }; if ($self->establish_snmp_secondary_session()) { $self->clear_table_cache('OSPF-MIB', 'ospfNbrTable'); $self->clear_table_cache('OSPFV3-MIB', 'ospfv3NbrTable'); $self->get_snmp_tables('OSPF-MIB', [ - ['nbr', 'ospfNbrTable', 'Classes::OSPF::Component::NeighborSubsystem::Neighbor', , sub { my ($o) = @_; return $self->filter_name($o->{ospfNbrIpAddr}) && $self->filter_name2($o->{ospfNbrRtrId}) }], + ['nbr', 'ospfNbrTable', 'Classes::OSPF::Component::NeighborSubsystem::Neighbor', sub { my ($o) = @_; return $self->filter_name($o->{ospfNbrIpAddr}) && $self->filter_name2($o->{ospfNbrRtrId}) }], ]); $self->get_snmp_tables('OSPFV3-MIB', [ - ['nbr3', 'ospfv3NbrTable', 'Classes::OSPF::Component::NeighborSubsystem::V3Neighbor', , sub { my ($o) = @_; return 1; $self->filter_name($o->{ospfNbrIpAddr}) && $self->filter_name2($o->{ospfNbrRtrId}) }], + ['nbr3', 'ospfv3NbrTable', 'Classes::OSPF::Component::NeighborSubsystem::V3Neighbor', sub { + my ($o) = @_; + return ($self->filter_name($o->compact_v6($o->{ospfv3NbrAddress})) && $self->filter_name2($o->{ospfv3NbrRtrId}) || + $self->filter_name($o->{ospfv3NbrAddress}) && $self->filter_name2($o->{ospfv3NbrRtrId})); + }], ]); + # doppelte Eintraege rauswerfen + my $nbr_found = {}; + @{$self->{nbr}} = grep { + my $signature = $_->{name}.$_->{ospfNbrRtrId}.$_->{ospfNbrState}; + if (exists $nbr_found->{$signature}) { + 0; + } else { + $nbr_found->{$signature} = 1; + 1; + } + } @{$self->{nbr}}; + my $nbr3_found = {}; + @{$self->{nbr3}} = grep { + my $signature = $_->{name}.$_->{ospfv3NbrRtrId}.$_->{ospfv3NbrState}; + if (exists $nbr3_found->{$signature}) { + 0; + } else { + $nbr3_found->{$signature} = 1; + 1; + } + } @{$self->{nbr3}}; } if (! @{$self->{nbr}} && ! @{$self->{nbr3}}) { $self->add_unknown("no neighbors found"); @@ -79,7 +108,7 @@ sub check { } } else { if (scalar(@{$self->{delta_found_neighborNameList}}) > 0) { - $self->add_warning(sprintf '%d new ospf neighbors (%s)', + $self->add_warning_mitigation(sprintf '%d new ospf neighbors (%s)', scalar(@{$self->{delta_found_neighborNameList}}), join(", ", @{$self->{delta_found_neighborNameList}})); $problem = 1; diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/OneOS.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/OneOS.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/OneOS.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/OneOS.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/OneOS/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/OneOS/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/OneOS/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/OneOS/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/OneOS/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/OneOS/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/OneOS/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/OneOS/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/OneOS/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/OneOS/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/OneOS/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/OneOS/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/PaloAlto.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/PaloAlto.pm similarity index 88% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/PaloAlto.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/PaloAlto.pm index 139f426..6fa1703 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/PaloAlto.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/PaloAlto.pm @@ -19,6 +19,9 @@ sub init { $self->analyze_and_check_mem_subsystem("Classes::HOSTRESOURCESMIB::Component::MemSubsystem"); } elsif ($self->mode =~ /device::ha::/) { $self->analyze_and_check_ha_subsystem("Classes::PaloAlto::Component::HaSubsystem"); + } elsif ($self->mode =~ /device::lb::session/) { + # it's not a load balancer, but session-usage is the best mode here + $self->analyze_and_check_session_subsystem("Classes::PaloAlto::Component::SessionSubsystem"); } else { $self->no_such_mode(); } diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/PaloAlto/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/PaloAlto/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/PaloAlto/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/PaloAlto/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/PaloAlto/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/PaloAlto/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/PaloAlto/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/PaloAlto/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/PaloAlto/Component/HaSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/PaloAlto/Component/HaSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/PaloAlto/Component/HaSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/PaloAlto/Component/HaSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/PaloAlto/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/PaloAlto/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/PaloAlto/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/PaloAlto/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/PaloAlto/Component/SessionSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/PaloAlto/Component/SessionSubsystem.pm new file mode 100644 index 0000000..6bc54e6 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/PaloAlto/Component/SessionSubsystem.pm @@ -0,0 +1,37 @@ +package Classes::PaloAlto::Component::SessionSubsystem; +our @ISA = qw(Monitoring::GLPlugin::SNMP::Item); +use strict; +use constant { OK => 0, WARNING => 1, CRITICAL => 2, UNKNOWN => 3 }; + +# On a Palo Alto Networks firewall, a session is defined by two uni-directional flows each uniquely identified by a 6-tuple key: source-address, destination-address, source-port, destination-port, protocol, and security-zone. +sub init { + my ($self) = @_; + if ($self->mode =~ /device::lb::session::usage/) { + $self->get_snmp_objects('PAN-COMMON-MIB', (qw( + panSessionUtilization))); + } +} + +sub check { + my ($self) = @_; + $self->add_info('checking sessions'); + $self->add_info(sprintf 'session table usage is %.2f%%', + $self->{panSessionUtilization}, + ); + $self->set_thresholds( + metric => 'session_usage', + warning => 80, critical => 90 + ); + $self->add_message( + $self->check_thresholds( + metric => 'session_usage', + value => $self->{panSessionUtilization}, + ) + ); + $self->add_perfdata( + label => 'session_usage', + value => $self->{panSessionUtilization}, + uom => '%', + ); +} + diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/RAPIDCITYMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/RAPIDCITYMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/RAPIDCITYMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/RAPIDCITYMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/RAPIDCITYMIB/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/RAPIDCITYMIB/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/RAPIDCITYMIB/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/RAPIDCITYMIB/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/RAPIDCITYMIB/Component/FanSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/RAPIDCITYMIB/Component/FanSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/RAPIDCITYMIB/Component/FanSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/RAPIDCITYMIB/Component/FanSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/RAPIDCITYMIB/Component/PowersupplySubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/RAPIDCITYMIB/Component/PowersupplySubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/RAPIDCITYMIB/Component/PowersupplySubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/RAPIDCITYMIB/Component/PowersupplySubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/RAPIDCITYMIB/Component/TemperatureSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/RAPIDCITYMIB/Component/TemperatureSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/RAPIDCITYMIB/Component/TemperatureSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/RAPIDCITYMIB/Component/TemperatureSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Riverbed.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Riverbed.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Riverbed.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Riverbed.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Riverbed/Steelhead.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Riverbed/Steelhead.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Riverbed/Steelhead.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Riverbed/Steelhead.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Riverbed/Steelhead/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Riverbed/Steelhead/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Riverbed/Steelhead/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Riverbed/Steelhead/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Riverbed/SteelheadEX/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Riverbed/SteelheadEX/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Riverbed/SteelheadEX/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Riverbed/SteelheadEX/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/SGOS.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/SGOS.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/SGOS.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/SGOS.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/SGOS/Component/ConnectionSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/SGOS/Component/ConnectionSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/SGOS/Component/ConnectionSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/SGOS/Component/ConnectionSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/SGOS/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/SGOS/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/SGOS/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/SGOS/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/SGOS/Component/DiskSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/SGOS/Component/DiskSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/SGOS/Component/DiskSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/SGOS/Component/DiskSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/SGOS/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/SGOS/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/SGOS/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/SGOS/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/SGOS/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/SGOS/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/SGOS/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/SGOS/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/SGOS/Component/SecuritySubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/SGOS/Component/SecuritySubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/SGOS/Component/SecuritySubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/SGOS/Component/SecuritySubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/SGOS/Component/SensorSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/SGOS/Component/SensorSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/SGOS/Component/SensorSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/SGOS/Component/SensorSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/SecureOS.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/SecureOS.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/SecureOS.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/SecureOS.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Server/Linux.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Server/Linux.pm similarity index 91% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Server/Linux.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Server/Linux.pm index 28cf525..a7b78df 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Server/Linux.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Server/Linux.pm @@ -14,7 +14,7 @@ sub init { $self->analyze_and_check_mem_subsystem("Classes::Server::Linux::Component::MemSubsystem"); } elsif ($self->mode =~ /device::process::status/) { $self->analyze_and_check_process_subsystem("Classes::UCDMIB::Component::ProcessSubsystem"); - } elsif ($self->mode =~ /device::uptime/) { + } elsif ($self->mode =~ /device::uptime/ && $self->implements_mib("HOST-RESOURCES-MIB")) { $self->analyze_and_check_uptime_subsystem("Classes::HOSTRESOURCESMIB::Component::UptimeSubsystem"); } else { $self->no_such_mode(); diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Server/Linux/Component/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Server/Linux/Component/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Server/Linux/Component/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Server/Linux/Component/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Server/Linux/Component/EnvironmentalSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Server/Linux/Component/EnvironmentalSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Server/Linux/Component/EnvironmentalSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Server/Linux/Component/EnvironmentalSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Server/Linux/Component/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Server/Linux/Component/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Server/Linux/Component/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Server/Linux/Component/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Server/LinuxLocal.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Server/LinuxLocal.pm similarity index 98% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Server/LinuxLocal.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Server/LinuxLocal.pm index c740671..7e322c4 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Server/LinuxLocal.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Server/LinuxLocal.pm @@ -60,7 +60,7 @@ sub init { chomp $tmpif->{$_} if defined $tmpif->{$_}; $tmpif->{$_} =~ s/\s*$//g if defined $tmpif->{$_}; } keys %{$tmpif}; - if ($tmpif->{ifOperStatus} eq 'unknown') { + if (! defined $tmpif->{ifOperStatus} || $tmpif->{ifOperStatus} eq 'unknown') { $tmpif->{ifOperStatus} = $tmpif->{ifCarrier} ? 'up' : 'down'; } $tmpif->{ifAdminStatus} = $tmpif->{ifOperStatus}; diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Server/SolarisLocal.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Server/SolarisLocal.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Server/SolarisLocal.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Server/SolarisLocal.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Server/WindowsLocal.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Server/WindowsLocal.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Server/WindowsLocal.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/Server/WindowsLocal.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UCDMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UCDMIB.pm similarity index 71% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UCDMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UCDMIB.pm index 1ab61e5..7327862 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UCDMIB.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UCDMIB.pm @@ -13,6 +13,10 @@ sub init { } elsif ($self->mode =~ /device::hardware::memory/) { $self->analyze_and_check_mem_subsystem("Classes::UCDMIB::Component::MemSubsystem"); $self->analyze_and_check_swap_subsystem("Classes::UCDMIB::Component::SwapSubsystem"); + } elsif ($self->mode =~ /device::process::status/) { + $self->analyze_and_check_process_subsystem("Classes::UCDMIB::Component::ProcessSubsystem"); + } elsif ($self->mode =~ /device::uptime/ && $self->implements_mib("HOST-RESOURCES-MIB")) { + $self->analyze_and_check_uptime_subsystem("Classes::HOSTRESOURCESMIB::Component::UptimeSubsystem"); } else { $self->no_such_mode(); } diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UCDMIB/Components/CpuSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UCDMIB/Components/CpuSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UCDMIB/Components/CpuSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UCDMIB/Components/CpuSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UCDMIB/Components/DiskSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UCDMIB/Components/DiskSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UCDMIB/Components/DiskSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UCDMIB/Components/DiskSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UCDMIB/Components/LoadSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UCDMIB/Components/LoadSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UCDMIB/Components/LoadSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UCDMIB/Components/LoadSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UCDMIB/Components/MemSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UCDMIB/Components/MemSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UCDMIB/Components/MemSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UCDMIB/Components/MemSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UCDMIB/Components/ProcessSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UCDMIB/Components/ProcessSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UCDMIB/Components/ProcessSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UCDMIB/Components/ProcessSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UCDMIB/Components/SwapSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UCDMIB/Components/SwapSubsystem.pm similarity index 91% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UCDMIB/Components/SwapSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UCDMIB/Components/SwapSubsystem.pm index 966d2ae..3cf95e5 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UCDMIB/Components/SwapSubsystem.pm +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UCDMIB/Components/SwapSubsystem.pm @@ -9,9 +9,11 @@ sub init { memSwapError memSwapErrorMsg))); # calc swap usage - eval { + if (defined $self->{memTotalSwap} && $self->{memTotalSwap}) { $self->{swap_usage} = 100 - ($self->{memAvailSwap} * 100 / $self->{memTotalSwap}); - }; + } else { + $self->{'swap_usage'} = undef if $@; + } # exception if memTotalSwap = 0, which means that no swap partition/device # was configured at all } diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UPNP.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UPNP.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UPNP.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UPNP.pm diff --git a/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UPNP/AVM.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UPNP/AVM.pm new file mode 100644 index 0000000..b048b04 --- /dev/null +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UPNP/AVM.pm @@ -0,0 +1,16 @@ +package Classes::UPNP::AVM; +our @ISA = qw(Classes::UPNP); +use strict; + +sub init { + my ($self) = @_; + if ($self->{productname} =~ /(7390|7490|7580|7590|6490|7412)/) { + $self->rebless('Classes::UPNP::AVM::FritzBox7390'); + } else { + $self->no_such_model(); + } + if (ref($self) ne "Classes::UPNP::AVM") { + $self->init(); + } +} + diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UPNP/AVM/FritzBox7390.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UPNP/AVM/FritzBox7390.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UPNP/AVM/FritzBox7390.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UPNP/AVM/FritzBox7390.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UPNP/AVM/FritzBox7390/Components/InterfaceSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UPNP/AVM/FritzBox7390/Components/InterfaceSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UPNP/AVM/FritzBox7390/Components/InterfaceSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UPNP/AVM/FritzBox7390/Components/InterfaceSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UPNP/AVM/FritzBox7390/Components/SmartHomeSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UPNP/AVM/FritzBox7390/Components/SmartHomeSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UPNP/AVM/FritzBox7390/Components/SmartHomeSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/UPNP/AVM/FritzBox7390/Components/SmartHomeSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/VRRPMIB.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/VRRPMIB.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/VRRPMIB.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/VRRPMIB.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/VRRPMIB/Component/VRRPSubsystem.pm b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/VRRPMIB/Component/VRRPSubsystem.pm similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/VRRPMIB/Component/VRRPSubsystem.pm rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Classes/VRRPMIB/Component/VRRPSubsystem.pm diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Makefile.am b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Makefile.am similarity index 96% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Makefile.am rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Makefile.am index 9caa858..f097b38 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Makefile.am +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Makefile.am @@ -15,6 +15,7 @@ GL_MODULES=\ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/AIRESPACEWIRELESSMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ALARMMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ALCATELIND1BASEMIB.pm \ + ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ARISTABGP4V2MIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ARISTAENTITYSENSORMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ARUBATCMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ASYNCOSMAILMIB.pm \ @@ -27,6 +28,7 @@ GL_MODULES=\ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOBGP4MIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOCCMMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOCONFIGMANMIB.pm \ + ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOEIGRPMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENHANCEDMEMPOOLMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENTITYALARMMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENTITYFRUCONTROLMIB.pm \ @@ -45,6 +47,7 @@ GL_MODULES=\ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOPORTCHANNELMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOPORTSECURITYMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOPROCESSMIB.pm \ + ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOREMOTEACCESSMONITORMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBHWENVIROMENTMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBRNDMNGMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBSYSMNGMIB.pm \ @@ -60,6 +63,7 @@ GL_MODULES=\ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ENTITYSENSORMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ENTITYSTATEMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ETHERLIKEMIB.pm \ + ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPAPMMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPGLOBALMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPLOCALMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPSYSTEMMIB.pm \ @@ -74,8 +78,9 @@ GL_MODULES=\ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HH3CENTITYEXTMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HUAWEIENTITYEXTENTMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HOSTRESOURCESMIB.pm \ - ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HPICFCHASSISMIB.pm \ + ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HPICFCHASSIS.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IANAIFTYPEMIB.pm \ + ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IANARTPROTOMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IEEE8023LAGMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IFMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/INETADDRESSMIB.pm \ @@ -111,6 +116,7 @@ GL_MODULES=\ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OSPFV3MIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PANCOMMONMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PANPRODUCTSMIB.pm \ + ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PHIONMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PROXYMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/RAPIDCITYMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/RESOURCEMIB.pm \ @@ -152,6 +158,8 @@ EXTRA_MODULES=\ Classes/Bintec/Bibo/Components/CpuSubsystem.pm \ Classes/Bintec/Bibo.pm \ Classes/Bintec.pm \ + Classes/Cisco/CISCOBGP4MIB/Components/PeerSubsystem.pm \ + Classes/Cisco/CISCOEIGRPMIB/Components/PeerSubsystem.pm \ Classes/Cisco/CISCOPORTSECURITYMIB/Component/InterfaceSubsystem.pm \ Classes/Cisco/OLDCISCOINTERFACESMIB/Component/InterfaceSubsystem.pm \ Classes/Cisco/CISCOIPSECFLOWMONITOR/Component/VpnSubsystem.pm \ @@ -167,6 +175,7 @@ EXTRA_MODULES=\ Classes/Cisco/CISCOENVMONMIB/Component/PowersupplySubsystem.pm \ Classes/Cisco/CISCOENVMONMIB/Component/VoltageSubsystem.pm \ Classes/Cisco/CISCOENVMONMIB/Component/FanSubsystem.pm \ + Classes/Cisco/CISCOREMOTEACCESSMONITORMIB/Component/VpnSubsystem.pm \ Classes/Cisco/CISCOSTACKMIB/Component/StackSubsystem.pm \ Classes/Cisco/CISCOSTACKWISEMIB/Component/StackSubsystem.pm \ Classes/Cisco/ASA.pm \ @@ -320,6 +329,7 @@ EXTRA_MODULES=\ Classes/F5/F5BIGIP/Component/FanSubsystem.pm \ Classes/F5/F5BIGIP/Component/GTM.pm \ Classes/F5/F5BIGIP/Component/HaSubsystem.pm \ + Classes/F5/F5BIGIP/Component/VipSubsystem.pm \ Classes/F5/F5BIGIP/Component/LTM.pm \ Classes/F5/F5BIGIP/Component/MemSubsystem.pm \ Classes/F5/F5BIGIP/Component/PowersupplySubsystem.pm \ @@ -388,6 +398,7 @@ EXTRA_MODULES=\ Classes/RAPIDCITYMIB/Component/FanSubsystem.pm \ Classes/RAPIDCITYMIB/Component/TemperatureSubsystem.pm \ Classes/RAPIDCITYMIB.pm \ + Classes/PaloAlto/Component/SessionSubsystem.pm \ Classes/PaloAlto/Component/MemSubsystem.pm \ Classes/PaloAlto/Component/CpuSubsystem.pm \ Classes/PaloAlto/Component/EnvironmentalSubsystem.pm \ @@ -405,6 +416,7 @@ EXTRA_MODULES=\ Classes/Netgear.pm \ Classes/Lantronix.pm \ Classes/Lantronix/SLS.pm \ + Classes/Arista/ARISTABGP4V2MIB/Components/PeerSubsystem.pm \ Classes/Arista/Component/EnvironmentalSubsystem.pm \ Classes/Arista.pm \ Classes/Riverbed/SteelheadEX/Component/EnvironmentalSubsystem.pm \ @@ -420,6 +432,10 @@ EXTRA_MODULES=\ Classes/DrayTek/Vigor/Component/MemSubsystem.pm \ Classes/DrayTek/Vigor.pm \ Classes/DrayTek.pm \ + Classes/Barracuda/Component/EnvironmentalSubsystem.pm \ + Classes/Barracuda/Component/HaSubsystem.pm \ + Classes/Barracuda/Component/FwSubsystem.pm \ + Classes/Barracuda.pm \ Classes/Device.pm SED=/bin/sed diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Makefile.in b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Makefile.in similarity index 97% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/Makefile.in rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Makefile.in index ef91ed6..c091d98 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Makefile.in +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/Makefile.in @@ -257,6 +257,7 @@ GL_MODULES = \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/AIRESPACEWIRELESSMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ALARMMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ALCATELIND1BASEMIB.pm \ + ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ARISTABGP4V2MIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ARISTAENTITYSENSORMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ARUBATCMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ASYNCOSMAILMIB.pm \ @@ -269,6 +270,7 @@ GL_MODULES = \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOBGP4MIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOCCMMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOCONFIGMANMIB.pm \ + ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOEIGRPMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENHANCEDMEMPOOLMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENTITYALARMMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOENTITYFRUCONTROLMIB.pm \ @@ -287,6 +289,7 @@ GL_MODULES = \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOPORTCHANNELMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOPORTSECURITYMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOPROCESSMIB.pm \ + ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOREMOTEACCESSMONITORMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBHWENVIROMENTMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBRNDMNGMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOSBSYSMNGMIB.pm \ @@ -302,6 +305,7 @@ GL_MODULES = \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ENTITYSENSORMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ENTITYSTATEMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ETHERLIKEMIB.pm \ + ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPAPMMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPGLOBALMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPLOCALMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/F5BIGIPSYSTEMMIB.pm \ @@ -316,8 +320,9 @@ GL_MODULES = \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HH3CENTITYEXTMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HUAWEIENTITYEXTENTMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HOSTRESOURCESMIB.pm \ - ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HPICFCHASSISMIB.pm \ + ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HPICFCHASSIS.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IANAIFTYPEMIB.pm \ + ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IANARTPROTOMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IEEE8023LAGMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/IFMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/INETADDRESSMIB.pm \ @@ -353,6 +358,7 @@ GL_MODULES = \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/OSPFV3MIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PANCOMMONMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PANPRODUCTSMIB.pm \ + ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PHIONMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/PROXYMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/RAPIDCITYMIB.pm \ ../GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/RESOURCEMIB.pm \ @@ -395,6 +401,8 @@ EXTRA_MODULES = \ Classes/Bintec/Bibo/Components/CpuSubsystem.pm \ Classes/Bintec/Bibo.pm \ Classes/Bintec.pm \ + Classes/Cisco/CISCOBGP4MIB/Components/PeerSubsystem.pm \ + Classes/Cisco/CISCOEIGRPMIB/Components/PeerSubsystem.pm \ Classes/Cisco/CISCOPORTSECURITYMIB/Component/InterfaceSubsystem.pm \ Classes/Cisco/OLDCISCOINTERFACESMIB/Component/InterfaceSubsystem.pm \ Classes/Cisco/CISCOIPSECFLOWMONITOR/Component/VpnSubsystem.pm \ @@ -410,6 +418,7 @@ EXTRA_MODULES = \ Classes/Cisco/CISCOENVMONMIB/Component/PowersupplySubsystem.pm \ Classes/Cisco/CISCOENVMONMIB/Component/VoltageSubsystem.pm \ Classes/Cisco/CISCOENVMONMIB/Component/FanSubsystem.pm \ + Classes/Cisco/CISCOREMOTEACCESSMONITORMIB/Component/VpnSubsystem.pm \ Classes/Cisco/CISCOSTACKMIB/Component/StackSubsystem.pm \ Classes/Cisco/CISCOSTACKWISEMIB/Component/StackSubsystem.pm \ Classes/Cisco/ASA.pm \ @@ -563,6 +572,7 @@ EXTRA_MODULES = \ Classes/F5/F5BIGIP/Component/FanSubsystem.pm \ Classes/F5/F5BIGIP/Component/GTM.pm \ Classes/F5/F5BIGIP/Component/HaSubsystem.pm \ + Classes/F5/F5BIGIP/Component/VipSubsystem.pm \ Classes/F5/F5BIGIP/Component/LTM.pm \ Classes/F5/F5BIGIP/Component/MemSubsystem.pm \ Classes/F5/F5BIGIP/Component/PowersupplySubsystem.pm \ @@ -631,6 +641,7 @@ EXTRA_MODULES = \ Classes/RAPIDCITYMIB/Component/FanSubsystem.pm \ Classes/RAPIDCITYMIB/Component/TemperatureSubsystem.pm \ Classes/RAPIDCITYMIB.pm \ + Classes/PaloAlto/Component/SessionSubsystem.pm \ Classes/PaloAlto/Component/MemSubsystem.pm \ Classes/PaloAlto/Component/CpuSubsystem.pm \ Classes/PaloAlto/Component/EnvironmentalSubsystem.pm \ @@ -648,6 +659,7 @@ EXTRA_MODULES = \ Classes/Netgear.pm \ Classes/Lantronix.pm \ Classes/Lantronix/SLS.pm \ + Classes/Arista/ARISTABGP4V2MIB/Components/PeerSubsystem.pm \ Classes/Arista/Component/EnvironmentalSubsystem.pm \ Classes/Arista.pm \ Classes/Riverbed/SteelheadEX/Component/EnvironmentalSubsystem.pm \ @@ -663,6 +675,10 @@ EXTRA_MODULES = \ Classes/DrayTek/Vigor/Component/MemSubsystem.pm \ Classes/DrayTek/Vigor.pm \ Classes/DrayTek.pm \ + Classes/Barracuda/Component/EnvironmentalSubsystem.pm \ + Classes/Barracuda/Component/HaSubsystem.pm \ + Classes/Barracuda/Component/FwSubsystem.pm \ + Classes/Barracuda.pm \ Classes/Device.pm SED = /bin/sed diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/check_nwc_health.pl b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/check_nwc_health.pl similarity index 90% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/check_nwc_health.pl rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/check_nwc_health.pl index 7facc85..a1925c4 100644 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/check_nwc_health.pl +++ b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/check_nwc_health.pl @@ -179,6 +179,12 @@ $plugin->add_mode( alias => undef, help => 'Check the status of vpns (up/down)', ); +$plugin->add_mode( + internal => 'device::vpn::sessions', + spec => 'vpn-sessions', + alias => undef, + help => 'Check the number of vpn sessions (users, errors)', +); $plugin->add_mode( internal => 'device::fcinterfaces::usage', spec => 'fc-interface-usage', @@ -305,6 +311,30 @@ $plugin->add_mode( alias => undef, help => 'Show OSPF neighbors', ); +$plugin->add_mode( + internal => 'device::eigrp::peer::count', + spec => 'count-eigrp-peers', + alias => undef, + help => 'Count the number of EIGRP peers', +); +$plugin->add_mode( + internal => 'device::eigrp::peer::status', + spec => 'eigrp-peer-status', + alias => undef, + help => 'Check status (existance) of EIGRP peers', +); +$plugin->add_mode( + internal => 'device::eigrp::peer::watch', + spec => 'watch-eigrp-peers', + alias => undef, + help => 'Watch EIGRP peers appear and disappear', +); +$plugin->add_mode( + internal => 'device::eigrp::peer::list', + spec => 'list-eigrp-peers', + alias => undef, + help => 'Show EIGRP peers', +); $plugin->add_mode( internal => 'device::ha::status', spec => 'ha-status', @@ -389,6 +419,30 @@ $plugin->add_mode( alias => undef, help => 'List load balancer pools', ); +$plugin->add_mode( + internal => 'device::vip::list', + spec => 'list-vips', + alias => undef, + help => 'List load balancer vips', +); +$plugin->add_mode( + internal => 'device::vip::watch', + spec => 'watch-vips', + alias => undef, + help => 'Watch load balancer vips', +); +$plugin->add_mode( + internal => 'device::vip::watch', + spec => 'watch-vips', + alias => undef, + help => 'Watch load balancer vips', +); +$plugin->add_mode( + internal => 'device::vip::connect', + spec => 'connect-vips', + alias => ['connected-vips'], + help => 'Check connectivity with load balancer vips', +); $plugin->add_mode( internal => 'device::licenses::validate', spec => 'check-licenses', @@ -398,7 +452,6 @@ $plugin->add_mode( $plugin->add_mode( internal => 'device::users::count', spec => 'count-users', - alias => ['count-sessions', 'count-connections'], help => 'Count the (connected) users/sessions', ); $plugin->add_mode( @@ -416,8 +469,8 @@ $plugin->add_mode( $plugin->add_mode( internal => 'device::connections::count', spec => 'count-connections', - alias => ['count-connections-client', 'count-connections-server'], - help => 'Check the number of connections (-client, -server is possible)', + alias => ['count-connections-client', 'count-connections-server', 'count-sessions'], + help => 'Check the number of connections/sessions (-client, -server is possible)', ); $plugin->add_mode( internal => 'device::cisco::fex::watch', @@ -541,6 +594,13 @@ $plugin->add_arg( The role of this device in a hsrp group (active/standby/listen)", required => 0, ); +$plugin->add_arg( + spec => 'nosensors', + help => "--nosensors + Skip tables with voltage/current sensors (Nexus)", + required => 0, + hidden => 1, +); $plugin->getopts(); $plugin->classify(); diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/subst.in b/check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/subst.in similarity index 100% rename from check_nwc_health/check_nwc_health-7.6/plugins-scripts/subst.in rename to check_nwc_health/check_nwc_health-7.12.1.3/plugins-scripts/subst.in diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/Item.pm b/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/Item.pm deleted file mode 100644 index e326b8c..0000000 --- a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/Item.pm +++ /dev/null @@ -1,32 +0,0 @@ -package Monitoring::GLPlugin::Item; -our @ISA = qw(Monitoring::GLPlugin); - -use strict; - -sub new { - my ($class, %params) = @_; - my $self = { - blacklisted => 0, - info => undef, - extendedinfo => undef, - }; - bless $self, $class; - $self->init(%params); - return $self; -} - -sub check { - my ($self, $lists) = @_; - my @lists = $lists ? @{$lists} : grep { ref($self->{$_}) eq "ARRAY" } keys %{$self}; - foreach my $list (@lists) { - $self->add_info('checking '.$list); - foreach my $element (@{$self->{$list}}) { - $element->blacklist() if $self->is_blacklisted(); - $element->check(); - } - } -} - -1; - -__END__ diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOLWAPPHAMIB.pm b/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOLWAPPHAMIB.pm deleted file mode 100644 index 4d6c754..0000000 --- a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/CISCOLWAPPHAMIB.pm +++ /dev/null @@ -1,131 +0,0 @@ -package Monitoring::GLPlugin::SNMP::MibsAndOids::CISCOLWAPPHAMIB; - -$Monitoring::GLPlugin::SNMP::MibsAndOids::origin->{'CISCO-LWAPP-HA-MIB'} = { - url => '', - name => 'CISCO-LWAPP-HA-MIB', -}; - -$Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{'CISCO-LWAPP-HA-MIB'} = - '1.3.6.1.4.1.9.9.198888'; - -$Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'CISCO-LWAPP-HA-MIB'} = { - ciscoLwappHaMIB => '1.3.6.1.4.1.9.9.198888', - ciscoLwappHaMIBObjects => '1.3.6.1.4.1.9.9.198888.0', - ciscoLwappHaGlobalConfig => '1.3.6.1.4.1.9.9.198888.0.1', - cLHaApSsoConfig => '1.3.6.1.4.1.9.9.198888.0.1.1', - cLHaPeerIpAddressType => '1.3.6.1.4.1.9.9.198888.0.1.2', - cLHaPeerIpAddressTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', - cLHaPeerIpAddress => '1.3.6.1.4.1.9.9.198888.0.1.3', - cLHaPeerIpAddressDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaPeerIpAddressType)', - cLHaServicePortPeerIpAddressType => '1.3.6.1.4.1.9.9.198888.0.1.4', - cLHaServicePortPeerIpAddressTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', - cLHaServicePortPeerIpAddress => '1.3.6.1.4.1.9.9.198888.0.1.5', - cLHaServicePortPeerIpAddressDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaServicePortPeerIpAddressType)', - cLHaServicePortPeerIpNetMaskType => '1.3.6.1.4.1.9.9.198888.0.1.6', - cLHaServicePortPeerIpNetMaskTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', - cLHaServicePortPeerIpNetMask => '1.3.6.1.4.1.9.9.198888.0.1.7', - cLHaServicePortPeerIpNetMaskDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaServicePortPeerIpNetMaskType)', - cLHaRedundancyIpAddressType => '1.3.6.1.4.1.9.9.198888.0.1.8', - cLHaRedundancyIpAddressTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', - cLHaRedundancyIpAddress => '1.3.6.1.4.1.9.9.198888.0.1.9', - cLHaRedundancyIpAddressDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaRedundancyIpAddressType)', - cLHaPeerMacAddress => '1.3.6.1.4.1.9.9.198888.0.1.10', - cLHaVirtualMacAddress => '1.3.6.1.4.1.9.9.198888.0.1.11', - cLHaPrimaryUnit => '1.3.6.1.4.1.9.9.198888.0.1.12', - cLHaPrimaryUnitDefinition => 'SNMPv2-TC-v1-MIB::TruthValue', - cLHaLinkEncryption => '1.3.6.1.4.1.9.9.198888.0.1.13', - cLHaNetworkFailOver => '1.3.6.1.4.1.9.9.198888.0.1.14', - cLHaNetworkFailOverDefinition => 'SNMPv2-TC-v1-MIB::TruthValue', - cLHaRFStatusUnitIp => '1.3.6.1.4.1.9.9.198888.0.1.15', - cLHaKATimeout => '1.3.6.1.4.1.9.9.198888.0.1.16', - cLHaKARetryCount => '1.3.6.1.4.1.9.9.198888.0.1.17', - cLHaGwRetryCount => '1.3.6.1.4.1.9.9.198888.0.1.18', - cLHaPeerSearchTimeout => '1.3.6.1.4.1.9.9.198888.0.1.19', - ciscoLwappHaNetworkConfig => '1.3.6.1.4.1.9.9.198888.0.2', - cLHaNetworkRoutePeerConfigTable => '1.3.6.1.4.1.9.9.198888.0.2.1', - cLHaNetworkRoutePeerConfigEntry => '1.3.6.1.4.1.9.9.198888.0.2.1.1', - cLHaNetworkRoutePeerIPAddressType => '1.3.6.1.4.1.9.9.198888.0.2.1.1.1', - cLHaNetworkRoutePeerIPAddressTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', - cLHaNetworkRoutePeerIPAddress => '1.3.6.1.4.1.9.9.198888.0.2.1.1.2', - cLHaNetworkRoutePeerIPAddressDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaNetworkRoutePeerIPAddressType)', - cLHaNetworkRoutePeerIPNetmaskType => '1.3.6.1.4.1.9.9.198888.0.2.1.1.3', - cLHaNetworkRoutePeerIPNetmaskTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', - cLHaNetworkRoutePeerIPNetmask => '1.3.6.1.4.1.9.9.198888.0.2.1.1.4', - cLHaNetworkRoutePeerIPNetmaskDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaNetworkRoutePeerIPNetmaskType)', - cLHaNetworkRoutePeerGatewayType => '1.3.6.1.4.1.9.9.198888.0.2.1.1.5', - cLHaNetworkRoutePeerGatewayTypeDefinition => 'INET-ADDRESS-MIB::InetAddressType', - cLHaNetworkRoutePeerGateway => '1.3.6.1.4.1.9.9.198888.0.2.1.1.6', - cLHaNetworkRoutePeerGatewayDefinition => 'INET-ADDRESS-MIB::InetAddress(cLHaNetworkRoutePeerGatewayType)', - cLHaNetworkRoutePeerTransferStatus => '1.3.6.1.4.1.9.9.198888.0.2.1.1.7', - cLHaNetworkRoutePeerTransferStatusDefinition => 'CISCO-LWAPP-HA-MIB::cLHaNetworkRoutePeerTransferStatus', - cLHaNetworkRoutePeerRowStatus => '1.3.6.1.4.1.9.9.198888.0.2.1.1.8', - ciscoLwappHaMIBNotifs => '1.3.6.1.4.1.9.9.198888.0.3', - ciscoLwappHaNotificationVariable => '1.3.6.1.4.1.9.9.198888.0.4', - cLHaSecondaryControllerUsageTrapType => '1.3.6.1.4.1.9.9.198888.0.4.1', - cLHaSecondaryControllerUsageTrapTypeDefinition => 'CISCO-LWAPP-HA-MIB::cLHaSecondaryControllerUsageTrapType', - cLHaSecondaryControllerUsageDayCounter => '1.3.6.1.4.1.9.9.198888.0.4.2', - cLHaBulkSyncCompleteEventStr => '1.3.6.1.4.1.9.9.198888.0.4.3', - cLHaPeerHotStandbyEventStr => '1.3.6.1.4.1.9.9.198888.0.4.4', - ciscoLwappHaPeerStatisticsVariable => '1.3.6.1.4.1.9.9.198888.0.5', - cLHaSystemStatistics => '1.3.6.1.4.1.9.9.198888.0.5.1', - cLHaCpuStatistics => '1.3.6.1.4.1.9.9.198888.0.5.1.1', - cLHaAllCpuUsage => '1.3.6.1.4.1.9.9.198888.0.5.1.1.1', - cLHaPowerSupplyStatistics => '1.3.6.1.4.1.9.9.198888.0.5.1.2', - cLHaPowerSupply1Present => '1.3.6.1.4.1.9.9.198888.0.5.1.2.1', - cLHaPowerSupply1PresentDefinition => 'CISCO-LWAPP-HA-MIB::cLHaPowerSupply1Present', - cLHaPowerSupply1Operational => '1.3.6.1.4.1.9.9.198888.0.5.1.2.2', - cLHaPowerSupply1OperationalDefinition => 'CISCO-LWAPP-HA-MIB::cLHaPowerSupply1Operational', - cLHaPowerSupply2Present => '1.3.6.1.4.1.9.9.198888.0.5.1.2.3', - cLHaPowerSupply2PresentDefinition => 'CISCO-LWAPP-HA-MIB::cLHaPowerSupply2Present', - cLHaPowerSupply2Operational => '1.3.6.1.4.1.9.9.198888.0.5.1.2.4', - cLHaPowerSupply2OperationalDefinition => 'CISCO-LWAPP-HA-MIB::cLHaPowerSupply2Operational', - cLHaMemoryStatistics => '1.3.6.1.4.1.9.9.198888.0.5.1.3', - cLHaTotalSystemMemory => '1.3.6.1.4.1.9.9.198888.0.5.1.3.1', - cLHaFreeSystemMemory => '1.3.6.1.4.1.9.9.198888.0.5.1.3.2', - cLHaUsedSystemMemory => '1.3.6.1.4.1.9.9.198888.0.5.1.3.3', - cLHaAllocatedFromRtos => '1.3.6.1.4.1.9.9.198888.0.5.1.3.4', - cLHaChunksFree => '1.3.6.1.4.1.9.9.198888.0.5.1.3.5', - cLHaMmappedRegions => '1.3.6.1.4.1.9.9.198888.0.5.1.3.6', - cLHaSpaceInMmappedRegions => '1.3.6.1.4.1.9.9.198888.0.5.1.3.7', - cLHaTotalAllocatedSpace => '1.3.6.1.4.1.9.9.198888.0.5.1.3.8', - cLHaTotalNotInUseSpace => '1.3.6.1.4.1.9.9.198888.0.5.1.3.9', - cLHaTopMostReleasableSpace => '1.3.6.1.4.1.9.9.198888.0.5.1.3.10', - cLHaTotalAllocatedInclMmap => '1.3.6.1.4.1.9.9.198888.0.5.1.3.11', - cLHaTotalUsedInclMmap => '1.3.6.1.4.1.9.9.198888.0.5.1.3.12', - cLHaTotalFreeInclMmap => '1.3.6.1.4.1.9.9.198888.0.5.1.3.13', - ciscoLwappHaStatisticsVariable => '1.3.6.1.4.1.9.9.198888.0.6', - cLHaAvgPeerReachLatency => '1.3.6.1.4.1.9.9.198888.0.6.1', - cLHaAvgGwReachLatency => '1.3.6.1.4.1.9.9.198888.0.6.2', - cLHaBulkSyncStatus => '1.3.6.1.4.1.9.9.198888.0.6.3', -}; - -$Monitoring::GLPlugin::SNMP::MibsAndOids::definitions->{'CISCO-LWAPP-HA-MIB'} = { - cLHaSecondaryControllerUsageTrapType => { - '1' => 'usageStart', - '2' => 'usageComplete', - '3' => 'overUsage', - }, - cLHaPowerSupply1Present => { - '0' => 'false', - '1' => 'true', - }, - cLHaPowerSupply1Operational => { - '0' => 'false', - '1' => 'true', - }, - cLHaPowerSupply2Present => { - '0' => 'false', - '1' => 'true', - }, - cLHaPowerSupply2Operational => { - '0' => 'false', - '1' => 'true', - }, - cLHaNetworkRoutePeerTransferStatus => { - '1' => 'initiate', - '2' => 'inProgress', - '3' => 'success', - '4' => 'failure', - '5' => 'timeout', - }, -}; diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ENTITYSENSORMIB.pm b/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ENTITYSENSORMIB.pm deleted file mode 100644 index e65eeac..0000000 --- a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/ENTITYSENSORMIB.pm +++ /dev/null @@ -1,66 +0,0 @@ -package Monitoring::GLPlugin::SNMP::MibsAndOids::ENTITYSENSORMIB; - -$Monitoring::GLPlugin::SNMP::MibsAndOids::origin->{'ENTITY-SENSOR-MIB'} = { - url => '', - name => 'ENTITY-SENSOR-MIB', -}; - -$Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'ENTITY-SENSOR-MIB'} = { - 'entitySensorObjects' => '1.3.6.1.2.1.99.1', - 'entPhySensorTable' => '1.3.6.1.2.1.99.1.1', - 'entPhySensorEntry' => '1.3.6.1.2.1.99.1.1.1', - 'entPhySensorType' => '1.3.6.1.2.1.99.1.1.1.1', - 'entPhySensorTypeDefinition' => { - '1' => 'other', - '2' => 'unknown', - '3' => 'voltsAC', - '4' => 'voltsDC', - '5' => 'amperes', - '6' => 'watts', - '7' => 'hertz', - '8' => 'celsius', - '9' => 'percentRH', - '10' => 'rpm', - '11' => 'cmm', - '12' => 'truthvalue', - }, - 'entPhySensorScale' => '1.3.6.1.2.1.99.1.1.1.2', - 'entPhySensorScaleDefinition' => { - '1' => 'yocto', - '2' => 'zepto', - '3' => 'atto', - '4' => 'femto', - '5' => 'pico', - '6' => 'nano', - '7' => 'micro', - '8' => 'milli', - '9' => 'units', - '10' => 'kilo', - '11' => 'mega', - '12' => 'giga', - '13' => 'tera', - '14' => 'exa', - '15' => 'peta', - '16' => 'zetta', - '17' => 'yotta', - }, - 'entPhySensorPrecision' => '1.3.6.1.2.1.99.1.1.1.3', - 'entPhySensorValue' => '1.3.6.1.2.1.99.1.1.1.4', - 'entPhySensorOperStatus' => '1.3.6.1.2.1.99.1.1.1.5', - 'entPhySensorOperStatusDefinition' => { - '1' => 'ok', - '2' => 'unavailable', - '3' => 'nonoperational', - }, - 'entPhySensorUnitsDisplay' => '1.3.6.1.2.1.99.1.1.1.6', - 'entPhySensorValueTimeStamp' => '1.3.6.1.2.1.99.1.1.1.7', - 'entPhySensorValueUpdateRate' => '1.3.6.1.2.1.99.1.1.1.8', - 'entitySensorConformance' => '1.3.6.1.2.1.99.3', - 'entitySensorCompliances' => '1.3.6.1.2.1.99.3.1', - 'entitySensorGroups' => '1.3.6.1.2.1.99.3.2', -}; - - -1; - -__END__ diff --git a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HPICFCHASSISMIB.pm b/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HPICFCHASSISMIB.pm deleted file mode 100644 index f4e51c3..0000000 --- a/check_nwc_health/check_nwc_health-7.6/GLPlugin/lib/Monitoring/GLPlugin/SNMP/MibsAndOids/HPICFCHASSISMIB.pm +++ /dev/null @@ -1,41 +0,0 @@ -package Monitoring::GLPlugin::SNMP::MibsAndOids::HPICFCHASSISMIB; - -$Monitoring::GLPlugin::SNMP::MibsAndOids::origin->{'HP-ICF-CHASSIS-MIB'} = { - url => '', - name => 'HP-ICF-CHASSIS-MIB', -}; - -$Monitoring::GLPlugin::SNMP::MibsAndOids::mib_ids->{'HP-ICF-CHASSIS-MIB'} = - '1.3.6.1.4.1.11.2.14.11.1.2.6'; -# sensor-table, because lots of oids will be superseeded by std. entity-mib -# However, the hpicfSensorTable will still be valid. - -$Monitoring::GLPlugin::SNMP::MibsAndOids::mibs_and_oids->{'HP-ICF-CHASSIS-MIB'} = { - 'hpicfSensorTable' => '1.3.6.1.4.1.11.2.14.11.1.2.6', - 'hpicfSensorEntry' => '1.3.6.1.4.1.11.2.14.11.1.2.6.1', - 'hpicfSensorIndex' => '1.3.6.1.4.1.11.2.14.11.1.2.6.1.1', - 'hpicfSensorObjectId' => '1.3.6.1.4.1.11.2.14.11.1.2.6.1.2', - 'hpicfSensorObjectIdDefinition' => { - '1' => 'fan sensor', - '2' => 'power supply', - '3' => 'redundant power supply', - '4' => 'over-temperature sensor', - }, - 'hpicfSensorNumber' => '1.3.6.1.4.1.11.2.14.11.1.2.6.1.3', - 'hpicfSensorStatus' => '1.3.6.1.4.1.11.2.14.11.1.2.6.1.4', - 'hpicfSensorStatusDefinition' => { - '1' => 'unknown', - '2' => 'bad', - '3' => 'warning', - '4' => 'good', - '5' => 'notPresent', - }, - 'hpicfSensorWarnings' => '1.3.6.1.4.1.11.2.14.11.1.2.6.1.5', - 'hpicfSensorFailures' => '1.3.6.1.4.1.11.2.14.11.1.2.6.1.6', - 'hpicfSensorDescr' => '1.3.6.1.4.1.11.2.14.11.1.2.6.1.7', -}; - - -1; - -__END__ diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/ConnectionSubsystem.pm b/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/ConnectionSubsystem.pm deleted file mode 100644 index cd06479..0000000 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/F5/F5BIGIP/Component/ConnectionSubsystem.pm +++ /dev/null @@ -1,26 +0,0 @@ -package Classes::F5::F5BIGIP::Component::ConnectionSubsystem; -our @ISA = qw(Monitoring::GLPlugin::SNMP::Item); -use strict; - -sub init { - my $self = shift; - $self->get_snmp_objects('F5-BIGIP-SYSTEM-MIB', (qw(sysStatClientCurConns sysStatServerCurConns))); -} - -sub check { - my $self = shift; - $self->set_thresholds(warning => 500000, critical => 750000); - $self->add_info(sprintf '%d client connections in use', $self->{sysStatClientCurConns}); - $self->add_message($self->check_thresholds(metric => 'client_cur_conns', value => $self->{sysStatClientCurConns})); - $self->add_perfdata( - label => 'client_cur_conns', - value => $self->{sysStatClientCurConns}, - ); - $self->add_info(sprintf '%d server connections in use', $self->{sysStatServerCurConns}); - $self->add_message($self->check_thresholds(metric => 'server_cur_conns', value => $self->{sysStatServerCurConns})); - $self->add_perfdata( - label => 'server_cur_conns', - value => $self->{sysStatServerCurConns}, - ); -} - diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HP/Procurve.pm b/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HP/Procurve.pm deleted file mode 100644 index 81dd0f7..0000000 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HP/Procurve.pm +++ /dev/null @@ -1,17 +0,0 @@ -package Classes::HP::Procurve; -our @ISA = qw(Classes::HP); -use strict; - -sub init { - my ($self) = @_; - if ($self->mode =~ /device::hardware::health/) { - $self->analyze_and_check_environmental_subsystem("Classes::HP::Procurve::Component::EnvironmentalSubsystem"); - } elsif ($self->mode =~ /device::hardware::load/) { - $self->analyze_and_check_cpu_subsystem("Classes::HP::Procurve::Component::CpuSubsystem"); - } elsif ($self->mode =~ /device::hardware::memory/) { - $self->analyze_and_check_mem_subsystem("Classes::HP::Procurve::Component::MemSubsystem"); - } else { - $self->no_such_mode(); - } -} - diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HP/Procurve/Component/SensorSubsystem.pm b/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HP/Procurve/Component/SensorSubsystem.pm deleted file mode 100644 index bb012e8..0000000 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/HP/Procurve/Component/SensorSubsystem.pm +++ /dev/null @@ -1,46 +0,0 @@ -package Classes::HP::Procurve::Component::SensorSubsystem; -our @ISA = qw(Monitoring::GLPlugin::SNMP::Item); -use strict; - -sub init { - my ($self) = @_; - $self->get_snmp_tables('HP-ICF-CHASSIS-MIB', [ - ['sensors', 'hpicfSensorTable', 'Classes::HP::Procurve::Component::SensorSubsystem::Sensor'], - ]); -} - -sub check { - my ($self) = @_; - $self->add_info('checking sensors'); - if (scalar (@{$self->{sensors}}) == 0) { - $self->add_ok('no sensors'); - } else { - foreach (@{$self->{sensors}}) { - $_->check(); - } - } -} - - -package Classes::HP::Procurve::Component::SensorSubsystem::Sensor; -our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); -use strict; - -sub check { - my ($self) = @_; - $self->add_info(sprintf 'sensor %s (%s) is %s', - $self->{hpicfSensorIndex}, - $self->{hpicfSensorDescr}, - $self->{hpicfSensorStatus}); - if ($self->{hpicfSensorStatus} eq "notPresent") { - } elsif ($self->{hpicfSensorStatus} eq "bad") { - $self->add_critical(); - } elsif ($self->{hpicfSensorStatus} eq "warning") { - $self->add_warning(); - } elsif ($self->{hpicfSensorStatus} eq "good") { - #$self->add_ok(); - } else { - $self->add_unknown(); - } -} - diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Huawei.pm b/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Huawei.pm deleted file mode 100644 index c90ac68..0000000 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/Huawei.pm +++ /dev/null @@ -1,24 +0,0 @@ -package Classes::Huawei; -our @ISA = qw(Classes::Device); -use strict; - -sub init { - my ($self) = @_; - my $sysobj = $self->get_snmp_object('MIB-2-MIB', 'sysObjectID', 0); - if ($sysobj =~ /^\.*1\.3\.6\.1\.4\.1\.2011\.2\.239/) { - bless $self, 'Classes::Huawei::CloudEngine'; - $self->debug('using Classes::Huawei::CloudEngine'); - } elsif ($self->mode =~ /device::hardware::health/) { - $self->analyze_and_check_environmental_subsystem("Classes::Huawei::Component::EnvironmentalSubsystem"); - } elsif ($self->mode =~ /device::hardware::load/) { - $self->analyze_and_check_cpu_subsystem("Classes::Huawei::Component::CpuSubsystem"); - } elsif ($self->mode =~ /device::hardware::memory/) { - $self->analyze_and_check_mem_subsystem("Classes::Huawei::Component::MemSubsystem"); - } else { - $self->no_such_mode(); - } - if (ref($self) ne "Classes::Huawei") { - $self->init(); - } -} - diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/IPFORWARDMIB/Component/RoutingSubsystem.pm b/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/IPFORWARDMIB/Component/RoutingSubsystem.pm deleted file mode 100644 index 339b270..0000000 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/IPFORWARDMIB/Component/RoutingSubsystem.pm +++ /dev/null @@ -1,148 +0,0 @@ -package Classes::IPFORWARDMIB::Component::RoutingSubsystem; -our @ISA = qw(Monitoring::GLPlugin::SNMP::Item); -use strict; -# plugins-scripts/check_nwc_health --mode list-routes --snmpwalk walks/simon.snmpwalk -# ipRouteTable 1.3.6.1.2.1.4.21 -# replaced by -# ipForwardTable 1.3.6.1.2.1.4.24.2 -# deprecated by -# ipCidrRouteTable 1.3.6.1.2.1.4.24.4 -# deprecated by the ip4/6-neutral -# inetCidrRouteTable 1.3.6.1.2.1.4.24.7 - -sub init { - my ($self) = @_; - $self->{interfaces} = []; - $self->get_snmp_tables('IP-FORWARD-MIB', [ - ['routes', 'inetCidrRouteTable', 'Classes::IPFORWARDMIB::Component::RoutingSubsystem::inetCidrRoute' ], - ]); - if (! @{$self->{routes}}) { - $self->get_snmp_tables('IP-FORWARD-MIB', [ - ['routes', 'ipCidrRouteTable', 'Classes::IPFORWARDMIB::Component::RoutingSubsystem::ipCidrRoute', - sub { - my ($o) = @_; - if ($o->opts->name && $o->opts->name =~ /\//) { - my ($dest, $cidr) = split(/\//, $o->opts->name); - my $bits = ( 2 ** (32 - $cidr) ) - 1; - my ($full_mask) = unpack("N", pack("C4", split(/\./, '255.255.255.255'))); - my $netmask = join('.', unpack("C4", pack("N", ($full_mask ^ $bits)))); - return defined $o->{ipCidrRouteDest} && ( - $o->filter_namex($dest, $o->{ipCidrRouteDest}) && - $o->filter_namex($netmask, $o->{ipCidrRouteMask}) && - $o->filter_name2($o->{ipCidrRouteNextHop}) - ); - } else { - return defined $o->{ipCidrRouteDest} && ( - $o->filter_name($o->{ipCidrRouteDest}) && - $o->filter_name2($o->{ipCidrRouteNextHop}) - ); - } - } - ], - ]); - } - # deprecated - #$self->get_snmp_tables('IP-FORWARD-MIB', [ - # ['routes', 'ipForwardTable', 'Classes::IPFORWARDMIB::Component::RoutingSubsystem::Route' ], - #]); - #$self->get_snmp_tables('IP-MIB', [ - # ['routes', 'ipRouteTable', 'Classes::IPFORWARDMIB::Component::RoutingSubsystem::Route' ], - #]); -} - -sub check { - my ($self) = @_; - $self->add_info('checking routes'); - if ($self->mode =~ /device::routes::list/) { - foreach (@{$self->{routes}}) { - $_->list(); - } - $self->add_ok("have fun"); - } elsif ($self->mode =~ /device::routes::count/) { - if (! $self->opts->name && $self->opts->name2) { - $self->add_info(sprintf "found %d routes via next hop %s", - scalar(@{$self->{routes}}), $self->opts->name2); - } elsif ($self->opts->name && ! $self->opts->name2) { - $self->add_info(sprintf "found %d routes to dest %s", - scalar(@{$self->{routes}}), $self->opts->name); - } elsif ($self->opts->name && $self->opts->name2) { - $self->add_info(sprintf "found %d routes to dest %s via hop %s", - scalar(@{$self->{routes}}), $self->opts->name, $self->opts->name2); - } else { - $self->add_info(sprintf "found %d routes", - scalar(@{$self->{routes}})); - } - $self->set_thresholds(warning => '1:', critical => '1:'); - $self->add_message($self->check_thresholds(scalar(@{$self->{routes}}))); - $self->add_perfdata( - label => 'routes', - value => scalar(@{$self->{routes}}), - ); - } -} - - -package Classes::IPFORWARDMIB::Component::RoutingSubsystem::Route; -our @ISA = qw(Monitoring::GLPlugin::SNMP::TableItem); - -package Classes::IPFORWARDMIB::Component::RoutingSubsystem::ipRoute; -our @ISA = qw(Classes::IPFORWARDMIB::Component::RoutingSubsystem::Route); - -package Classes::IPFORWARDMIB::Component::RoutingSubsystem::ipCidrRoute; -our @ISA = qw(Classes::IPFORWARDMIB::Component::RoutingSubsystem::Route); - -sub finish { - my ($self) = @_; - if (! defined $self->{ipCidrRouteDest}) { - # we can reconstruct a few attributes from the index - # one customer only made ipCidrRouteStatus visible - $self->{ipCidrRouteDest} = join(".", map { $self->{indices}->[$_] } (0, 1, 2, 3)); - $self->{ipCidrRouteMask} = join(".", map { $self->{indices}->[$_] } (4, 5, 6, 7)); - $self->{ipCidrRouteTos} = $self->{indices}->[8]; - $self->{ipCidrRouteNextHop} = join(".", map { $self->{indices}->[$_] } (9, 10, 11, 12)); - $self->{ipCidrRouteType} = "other"; # maybe not, who cares - $self->{ipCidrRouteProto} = "other"; # maybe not, who cares - } -} - -sub list { - my ($self) = @_; - printf "%16s %16s %16s %11s %7s\n", - $self->{ipCidrRouteDest}, $self->{ipCidrRouteMask}, - $self->{ipCidrRouteNextHop}, $self->{ipCidrRouteProto}, - $self->{ipCidrRouteType}; -} - -package Classes::IPFORWARDMIB::Component::RoutingSubsystem::inetCidrRoute; -our @ISA = qw(Classes::IPFORWARDMIB::Component::RoutingSubsystem::Route); - -sub finish { - my ($self) = @_; - # http://www.mibdepot.com/cgi-bin/vendor_index.cgi?r=ietf_rfcs - # INDEX { inetCidrRouteDestType, inetCidrRouteDest, inetCidrRoutePfxLen, inetCidrRoutePolicy, inetCidrRouteNextHopType, inetCidrRouteNextHop } - $self->{i_inetCidrRouteDestType} = $self->{indices}->[0]; - $self->{i_inetCidrRouteDest} = $self->{indices}->[1]; - $self->{i_inetCidrRoutePfxLen} = $self->{indices}->[2]; - $self->{i_inetCidrRoutePolicy} = $self->{indices}->[3]; - $self->{i_inetCidrRouteNextHopType} = $self->{indices}->[4]; - $self->{i_inetCidrRouteNextHop} = $self->{indices}->[5]; - $self->{inetCidrRouteDestType} = $self->mibs_and_oids_definition( - 'INET-ADDRESS-MIB', 'InetAddressType', $self->{indices}->[0]); - if ($self->{inetCidrRouteDestType} eq "ipv4") { - $self->{inetCidrRouteDest} = $self->mibs_and_oids_definition( - 'INET-ADDRESS-MIB', 'InetAddress', @{$self->{indices}}); - } elsif ($self->{inetCidrRouteDestType} eq "ipv4") { - $self->{inetCidrRoutePfxLen} = $self->mibs_and_oids_definition( - 'RFC4001-MIB', 'inetAddress', $self->{indices}->[1], - $self->{indices}->[2], $self->{indices}->[3], $self->{indices}->[4]); - - } -} - -sub list { - my ($self) = @_; - printf "%16s %16s %16s %11s %7s\n", - $self->{ipCidrRouteDest}, $self->{ipCidrRouteMask}, - $self->{ipCidrRouteNextHop}, $self->{ipCidrRouteProto}, - $self->{ipCidrRouteType}; -} diff --git a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UPNP/AVM.pm b/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UPNP/AVM.pm deleted file mode 100644 index e82ab70..0000000 --- a/check_nwc_health/check_nwc_health-7.6/plugins-scripts/Classes/UPNP/AVM.pm +++ /dev/null @@ -1,26 +0,0 @@ -package Classes::UPNP::AVM; -our @ISA = qw(Classes::UPNP); -use strict; - -sub init { - my ($self) = @_; - if ($self->{productname} =~ /(7390|7490)/) { - bless $self, 'Classes::UPNP::AVM::FritzBox7390'; - $self->debug('using Classes::UPNP::AVM::FritzBox7390'); - } elsif ($self->{productname} =~ /7490/) { - bless $self, 'Classes::UPNP::AVM::FritzBox7390'; - $self->debug('using Classes::UPNP::AVM::FritzBox7390'); - } elsif ($self->{productname} =~ /6490/) { - bless $self, 'Classes::UPNP::AVM::FritzBox7390'; - $self->debug('using Classes::UPNP::AVM::FritzBox7390'); - } elsif ($self->{productname} =~ /7412/) { - bless $self, 'Classes::UPNP::AVM::FritzBox7390'; - $self->debug('using Classes::UPNP::AVM::FritzBox7390'); - } else { - $self->no_such_model(); - } - if (ref($self) ne "Classes::UPNP::AVM") { - $self->init(); - } -} - diff --git a/check_nwc_health/control b/check_nwc_health/control index e4e6c51..8e56581 100644 --- a/check_nwc_health/control +++ b/check_nwc_health/control @@ -4,4 +4,4 @@ Uploaders: Jan Wagner Description: This plugin checks the hardware health and interface metrics of network components like switches and routers. Build-Depends: autotools-dev -Version: 7.6 +Version: 7.12.1.3 diff --git a/check_nwc_health/src b/check_nwc_health/src index 3600e9c..aee6125 120000 --- a/check_nwc_health/src +++ b/check_nwc_health/src @@ -1 +1 @@ -check_nwc_health-7.6/ \ No newline at end of file +check_nwc_health-7.12.1.3 \ No newline at end of file