1
0
Fork 0
mirror of https://github.com/munin-monitoring/contrib.git synced 2025-07-21 18:41:03 +00:00

Plugin-Gallery: Get better 2nd level headings

Review of category processes, system, snmp
This commit is contained in:
dipohl 2017-02-24 19:50:15 +01:00
parent 4b400a7320
commit e777037d06
27 changed files with 15 additions and 15 deletions

View file

@ -1,88 +0,0 @@
#!/usr/bin/perl -w
=head1 MAGIC MARKERS
#%# family=snmpauto
#%# capabilities=snmpconf
=cut
use strict;
use Munin::Plugin;
use Munin::Plugin::SNMP;
my $DEBUG=$ENV{'MUNIN_DEBUG'};
# This is the snmpwalk:
# snAgentTempSensorDescr.1.1 = STRING: "Line module 1, sensor 1 temperature"
# snAgentTempSensorDescr.1.2 = STRING: "Line module 1, sensor 2 temperature"
# snAgentTempSensorDescr.1.3 = STRING: "Line module 1, sensor 3 temperature"
# snAgentTempSensorDescr.1.4 = STRING: "Line module 1, sensor 4 temperature"
# snAgentTempSensorDescr.2.1 = STRING: "Line module 2, sensor 1 temperature"
# snAgentTempSensorDescr.2.2 = STRING: "Line module 2, sensor 2 temperature"
# snAgentTempSensorDescr.2.3 = STRING: "Line module 2, sensor 3 temperature"
# snAgentTempSensorDescr.2.4 = STRING: "Line module 2, sensor 4 temperature"
# snAgentTempSensorDescr.3.1 = STRING: "Active management module temperature"
# snAgentTempSensorDescr.3.2 = STRING: "Active management module temperature"
# snAgentTempValue.1.1 = INTEGER: 100
# snAgentTempValue.1.2 = INTEGER: 106
# snAgentTempValue.1.3 = INTEGER: 82
# snAgentTempValue.1.4 = INTEGER: 72
# snAgentTempValue.2.1 = INTEGER: 74
# snAgentTempValue.2.2 = INTEGER: 102
# snAgentTempValue.2.3 = INTEGER: 70
# snAgentTempValue.2.4 = INTEGER: 74
# snAgentTempValue.3.1 = INTEGER: 78
# snAgentTempValue.3.2 = INTEGER: 84
my $brcdIp = '1.3.6.1.4.1.1991';
my $snAgentTempTable = "$brcdIp.1.1.2.13.1";
my $snAgentTempSensorDescr = "$snAgentTempTable.1.3";
my $snAgentTempValue = "$snAgentTempTable.1.4";
if (defined $ARGV[0] and $ARGV[0] eq "snmpconf") {
print "index $snAgentTempTable.1.3.\n";
print "require $snAgentTempSensorDescr. [1-9]\n";
print "require $snAgentTempValue. [1-9]\n";
exit 0;
}
my $module = 0;
if ($Munin::Plugin::me =~ /_module_(\d+)$/) {
$module = $1;
} else {
die "Could not determine module number from ".$Munin::Plugin::me."\n";
}
my ($session,$error);
$session = Munin::Plugin::SNMP->session(-translate => [ -nosuchinstance => undef ]);
my $sensor = 1;
if ($ARGV[0] and $ARGV[0] eq "config") {
my ($host,undef,$version) = Munin::Plugin::SNMP->config_session();
print "host_name $host\n" unless $host eq 'localhost';
print "graph_title Module $module
graph_args --base 1000 --lower-limit 0
graph_vlabel °C
graph_category system
graph_scale no\n";
my $descr = undef;
while (defined ($descr = $session->get_single("$snAgentTempSensorDescr.$module.$sensor"))) {
print "sensor$sensor.label $descr\n";
$sensor ++;
}
exit 0;
}
my $value = undef;
while (defined ($value = $session->get_single("$snAgentTempValue.$module.$sensor"))) {
$value /= 2;
print "sensor$sensor.value $value\n";
$sensor++;
}
# vim:ft=perl

View file

@ -1,139 +0,0 @@
#!/usr/bin/perl -w
#
# Copyright (C) 2009 Branislav Bozgai
#
# Munin plugin to monitor ZyXel USG series routers CPU utilization.
# Based on snmp__if_ plugin.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; version 2 dated June,
# 1991.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#%# family=snmpauto
#%# capabilities=snmpconf
use strict;
use Net::SNMP;
my $DEBUG = 0;
my $host = $ENV{host} || undef;
my $port = $ENV{port} || 161;
my $community = $ENV{community} || "public";
my $response;
if (defined $ARGV[0] and $ARGV[0] eq "snmpconf")
{
print "require 1.3.6.1.4.1.890.1.6.22.1.1.0 \n";
exit 0;
}
if ($0 =~ /^(?:|.*\/)snmp_zyxel_usg_([^_]+)_cpu$/)
{
$host = $1;
if ($host =~ /^([^:]+):(\d+)$/)
{
$host = $1;
$port = $2;
}
}
elsif (!defined($host))
{
print "# Debug: $0 -- $1\n" if $DEBUG;
die "# Error: couldn't understand what I'm supposed to monitor.";
}
my $sysCPUUsage = "1.3.6.1.4.1.890.1.6.22.1.1.0";
my $sysCPU5SecUsage = "1.3.6.1.4.1.890.1.6.22.1.3.0";
my $sysCPU1MinUsage = "1.3.6.1.4.1.890.1.6.22.1.4.0";
my $sysCPU5MinUsage = "1.3.6.1.4.1.890.1.6.22.1.5.0";
my ($session, $error) = Net::SNMP->session(
-hostname => $host,
-community => $community,
-port => $port
);
if (!defined ($session))
{
die "Croaking: $error";
}
if ($ARGV[0] and $ARGV[0] eq "config")
{
print "host_name $host\n";
if (!defined ($response = $session->get_request($sysCPUUsage)))
{
die "Croaking: " . $session->error();
}
print "graph_title CPU usage\n";
print "graph_category system\n";
print "graph_args --base 1000 -r --lower-limit 0 --upper-limit 100\n";
print "graph_vlabel %\n";
print "graph_scale no\n";
print "graph_period second\n";
print "graph_info CPU usage\n";
print "sysCPUUsage.label CPU Usage\n";
print "sysCPU5SecUsage.label CPU 5 sec Avg Usage\n";
print "sysCPU1MinUsage.label CPU 1 min Avg Usage\n";
print "sysCPU5MinUsage.label CPU 5 min Avg Usage\n";
print "sysCPUUsage.draw AREA\n";
print "sysCPU5SecUsage.draw AREA\n";
print "sysCPU1MinUsage.draw AREA\n";
print "sysCPU5MinUsage.draw AREA\n";
exit 0;
}
if (defined ($response = $session->get_request($sysCPUUsage)))
{
print "sysCPUUsage.value ", $response->{$sysCPUUsage}, "\n";
}
else
{
print "sysCPUUsage.value U\n";
}
if (defined ($response = $session->get_request($sysCPU5SecUsage)))
{
print "sysCPU5SecUsage.value ", $response->{$sysCPU5SecUsage}, "\n";
}
else
{
print "sysCPU5SecUsage.value U\n";
}
if (defined ($response = $session->get_request($sysCPU1MinUsage)))
{
print "sysCPU1MinUsage.value ", $response->{$sysCPU1MinUsage}, "\n";
}
else
{
print "sysCPU1MinUsage.value U\n";
}
if (defined ($response = $session->get_request($sysCPU5MinUsage)))
{
print "sysCPU5MinUsage.value ", $response->{$sysCPU5MinUsage}, "\n";
}
else
{
print "sysCPU5MinUsage.value U\n";
}
# vim:syntax=perl

View file

@ -1,102 +0,0 @@
#!/usr/bin/perl -w
#
# Copyright (C) 2009 Branislav Bozgai
#
# Munin plugin to monitor ZyXel USG series routers RAM utilization.
# Based on snmp__if_ plugin.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; version 2 dated June,
# 1991.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#%# family=snmpauto
#%# capabilities=snmpconf
use strict;
use Net::SNMP;
my $DEBUG = 0;
my $host = $ENV{host} || undef;
my $port = $ENV{port} || 161;
my $community = $ENV{community} || "public";
my $response;
if (defined $ARGV[0] and $ARGV[0] eq "snmpconf")
{
print "require 1.3.6.1.4.1.890.1.6.22.1.2.0 \n";
exit 0;
}
if ($0 =~ /^(?:|.*\/)snmp_zyxel_usg_([^_]+)_ram$/)
{
$host = $1;
if ($host =~ /^([^:]+):(\d+)$/)
{
$host = $1;
$port = $2;
}
}
elsif (!defined($host))
{
print "# Debug: $0 -- $1\n" if $DEBUG;
die "# Error: couldn't understand what I'm supposed to monitor.";
}
my $sysRAMUsage = "1.3.6.1.4.1.890.1.6.22.1.2.0";
my ($session, $error) = Net::SNMP->session(
-hostname => $host,
-community => $community,
-port => $port
);
if (!defined ($session))
{
die "Croaking: $error";
}
if ($ARGV[0] and $ARGV[0] eq "config")
{
print "host_name $host\n";
if (!defined ($response = $session->get_request($sysRAMUsage)))
{
die "Croaking: " . $session->error();
}
print "graph_title RAM usage\n";
print "graph_category system\n";
print "graph_args --base 1000 -r --lower-limit 0 --upper-limit 100\n";
print "graph_vlabel %\n";
print "graph_scale no\n";
print "graph_period second\n";
print "graph_info RAM usage\n";
print "sysRAMUsage.label RAM Usage\n";
print "sysRAMUsage.draw AREA\n";
exit 0;
}
if (defined ($response = $session->get_request($sysRAMUsage)))
{
print "sysRAMUsage.value ", $response->{$sysRAMUsage}, "\n";
}
else
{
print "sysRAMUsage.value U\n";
}
# vim:syntax=perl

View file

@ -1,101 +0,0 @@
#!/usr/bin/perl -w
#
# Copyright (C) 2009 Branislav Bozgai
#
# Munin plugin to monitor ZyXel USG series routers Sessions utilization.
# Based on snmp__if_ plugin.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; version 2 dated June,
# 1991.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#%# family=snmpauto
#%# capabilities=snmpconf
use strict;
use Net::SNMP;
my $DEBUG = 0;
my $host = $ENV{host} || undef;
my $port = $ENV{port} || 161;
my $community = $ENV{community} || "public";
my $response;
if (defined $ARGV[0] and $ARGV[0] eq "snmpconf")
{
print "require 1.3.6.1.4.1.890.1.6.22.1.6.0 \n";
exit 0;
}
if ($0 =~ /^(?:|.*\/)snmp_zyxel_usg_([^_]+)_sessions$/)
{
$host = $1;
if ($host =~ /^([^:]+):(\d+)$/)
{
$host = $1;
$port = $2;
}
}
elsif (!defined($host))
{
print "# Debug: $0 -- $1\n" if $DEBUG;
die "# Error: couldn't understand what I'm supposed to monitor.";
}
my $sysActiveSessions = "1.3.6.1.4.1.890.1.6.22.1.6.0";
my ($session, $error) = Net::SNMP->session(
-hostname => $host,
-community => $community,
-port => $port
);
if (!defined ($session))
{
die "Croaking: $error";
}
if ($ARGV[0] and $ARGV[0] eq "config")
{
print "host_name $host\n";
if (!defined ($response = $session->get_request($sysActiveSessions)))
{
die "Croaking: " . $session->error();
}
print "graph_title Active Sessions\n";
print "graph_category system\n";
print "graph_args --base 1000 --lower-limit 0\n";
print "graph_vlabel Active Sessions\n";
print "graph_period second\n";
print "graph_info Active Sessions\n";
print "sysActiveSessions.label Sessions\n";
print "sysActiveSessions.draw AREA\n";
exit 0;
}
if (defined ($response = $session->get_request($sysActiveSessions)))
{
print "sysActiveSessions.value ", $response->{$sysActiveSessions}, "\n";
}
else
{
print "sysActiveSessions.value U\n";
}
# vim:syntax=perl

View file

@ -1,102 +0,0 @@
#!/usr/bin/perl -w
#
# Copyright (C) 2009 Branislav Bozgai
#
# Munin plugin to monitor ZyXel ZyWall series routers CPU utilization.
# Based on snmp__if_ plugin.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; version 2 dated June,
# 1991.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#%# family=snmpauto
#%# capabilities=snmpconf
use strict;
use Net::SNMP;
my $DEBUG = 0;
my $host = $ENV{host} || undef;
my $port = $ENV{port} || 161;
my $community = $ENV{community} || "public";
my $response;
if (defined $ARGV[0] and $ARGV[0] eq "snmpconf")
{
print "require 1.3.6.1.4.1.890.1.6.1.1.1.0 \n";
exit 0;
}
if ($0 =~ /^(?:|.*\/)snmp_zyxel_zywall_([^_]+)_cpu$/)
{
$host = $1;
if ($host =~ /^([^:]+):(\d+)$/)
{
$host = $1;
$port = $2;
}
}
elsif (!defined($host))
{
print "# Debug: $0 -- $1\n" if $DEBUG;
die "# Error: couldn't understand what I'm supposed to monitor.";
}
my $sysCPUUsage = "1.3.6.1.4.1.890.1.6.1.1.1.0";
my ($session, $error) = Net::SNMP->session(
-hostname => $host,
-community => $community,
-port => $port
);
if (!defined ($session))
{
die "Croaking: $error";
}
if ($ARGV[0] and $ARGV[0] eq "config")
{
print "host_name $host\n";
if (!defined ($response = $session->get_request($sysCPUUsage)))
{
die "Croaking: " . $session->error();
}
print "graph_title CPU usage\n";
print "graph_category system\n";
print "graph_args --base 1000 -r --lower-limit 0 --upper-limit 100\n";
print "graph_vlabel %\n";
print "graph_scale no\n";
print "graph_period second\n";
print "graph_info CPU usage\n";
print "sysCPUUsage.label CPU Usage\n";
print "sysCPUUsage.draw AREA\n";
exit 0;
}
if (defined ($response = $session->get_request($sysCPUUsage)))
{
print "sysCPUUsage.value ", $response->{$sysCPUUsage}, "\n";
}
else
{
print "sysCPUUsage.value U\n";
}
# vim:syntax=perl

View file

@ -1,102 +0,0 @@
#!/usr/bin/perl -w
#
# Copyright (C) 2009 Branislav Bozgai
#
# Munin plugin to monitor ZyXel ZyWall series routers Flash memory utilization.
# Based on snmp__if_ plugin.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; version 2 dated June,
# 1991.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#%# family=snmpauto
#%# capabilities=snmpconf
use strict;
use Net::SNMP;
my $DEBUG = 0;
my $host = $ENV{host} || undef;
my $port = $ENV{port} || 161;
my $community = $ENV{community} || "public";
my $response;
if (defined $ARGV[0] and $ARGV[0] eq "snmpconf")
{
print "require 1.3.6.1.4.1.890.1.6.1.1.2.0 \n";
exit 0;
}
if ($0 =~ /^(?:|.*\/)snmp_zyxel_zywall_([^_]+)_flash$/)
{
$host = $1;
if ($host =~ /^([^:]+):(\d+)$/)
{
$host = $1;
$port = $2;
}
}
elsif (!defined($host))
{
print "# Debug: $0 -- $1\n" if $DEBUG;
die "# Error: couldn't understand what I'm supposed to monitor.";
}
my $sysFLASHUsage = "1.3.6.1.4.1.890.1.6.1.1.2.0";
my ($session, $error) = Net::SNMP->session(
-hostname => $host,
-community => $community,
-port => $port
);
if (!defined ($session))
{
die "Croaking: $error";
}
if ($ARGV[0] and $ARGV[0] eq "config")
{
print "host_name $host\n";
if (!defined ($response = $session->get_request($sysFLASHUsage)))
{
die "Croaking: " . $session->error();
}
print "graph_title FLASH usage\n";
print "graph_category system\n";
print "graph_args --base 1000 -r --lower-limit 0 --upper-limit 100\n";
print "graph_vlabel %\n";
print "graph_scale no\n";
print "graph_period second\n";
print "graph_info FLASH usage\n";
print "sysFLASHUsage.label FLASH Usage\n";
print "sysFLASHUsage.draw AREA\n";
exit 0;
}
if (defined ($response = $session->get_request($sysFLASHUsage)))
{
print "sysFLASHUsage.value ", $response->{$sysFLASHUsage}, "\n";
}
else
{
print "sysFLASHUsage.value U\n";
}
# vim:syntax=perl

View file

@ -1,102 +0,0 @@
#!/usr/bin/perl -w
#
# Copyright (C) 2009 Branislav Bozgai
#
# Munin plugin to monitor ZyXel ZyWall series routers RAM utilization.
# Based on snmp__if_ plugin.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; version 2 dated June,
# 1991.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#%# family=snmpauto
#%# capabilities=snmpconf
use strict;
use Net::SNMP;
my $DEBUG = 0;
my $host = $ENV{host} || undef;
my $port = $ENV{port} || 161;
my $community = $ENV{community} || "public";
my $response;
if (defined $ARGV[0] and $ARGV[0] eq "snmpconf")
{
print "require 1.3.6.1.4.1.890.1.6.1.1.3.0 \n";
exit 0;
}
if ($0 =~ /^(?:|.*\/)snmp_zyxel_zywall_([^_]+)_ram$/)
{
$host = $1;
if ($host =~ /^([^:]+):(\d+)$/)
{
$host = $1;
$port = $2;
}
}
elsif (!defined($host))
{
print "# Debug: $0 -- $1\n" if $DEBUG;
die "# Error: couldn't understand what I'm supposed to monitor.";
}
my $sysRAMUsage = "1.3.6.1.4.1.890.1.6.1.1.3.0";
my ($session, $error) = Net::SNMP->session(
-hostname => $host,
-community => $community,
-port => $port
);
if (!defined ($session))
{
die "Croaking: $error";
}
if ($ARGV[0] and $ARGV[0] eq "config")
{
print "host_name $host\n";
if (!defined ($response = $session->get_request($sysRAMUsage)))
{
die "Croaking: " . $session->error();
}
print "graph_title RAM usage\n";
print "graph_category system\n";
print "graph_args --base 1000 -r --lower-limit 0 --upper-limit 100\n";
print "graph_vlabel %\n";
print "graph_scale no\n";
print "graph_period second\n";
print "graph_info RAM usage\n";
print "sysRAMUsage.label RAM Usage\n";
print "sysRAMUsage.draw AREA\n";
exit 0;
}
if (defined ($response = $session->get_request($sysRAMUsage)))
{
print "sysRAMUsage.value ", $response->{$sysRAMUsage}, "\n";
}
else
{
print "sysRAMUsage.value U\n";
}
# vim:syntax=perl

View file

@ -1,101 +0,0 @@
#!/usr/bin/perl -w
#
# Copyright (C) 2009 Branislav Bozgai
#
# Munin plugin to monitor ZyXel ZyWall series routers Sessions utilization.
# Based on snmp__if_ plugin.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; version 2 dated June,
# 1991.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#%# family=snmpauto
#%# capabilities=snmpconf
use strict;
use Net::SNMP;
my $DEBUG = 0;
my $host = $ENV{host} || undef;
my $port = $ENV{port} || 161;
my $community = $ENV{community} || "public";
my $response;
if (defined $ARGV[0] and $ARGV[0] eq "snmpconf")
{
print "require 1.3.6.1.4.1.890.1.6.1.1.4.0\n";
exit 0;
}
if ($0 =~ /^(?:|.*\/)snmp_zyxel_zywall_([^_]+)_sessions$/)
{
$host = $1;
if ($host =~ /^([^:]+):(\d+)$/)
{
$host = $1;
$port = $2;
}
}
elsif (!defined($host))
{
print "# Debug: $0 -- $1\n" if $DEBUG;
die "# Error: couldn't understand what I'm supposed to monitor.";
}
my $sysActiveSessions = "1.3.6.1.4.1.890.1.6.1.1.4.0";
my ($session, $error) = Net::SNMP->session(
-hostname => $host,
-community => $community,
-port => $port
);
if (!defined ($session))
{
die "Croaking: $error";
}
if ($ARGV[0] and $ARGV[0] eq "config")
{
print "host_name $host\n";
if (!defined ($response = $session->get_request($sysActiveSessions)))
{
die "Croaking: " . $session->error();
}
print "graph_title Active Sessions\n";
print "graph_category system\n";
print "graph_args --base 1000 --lower-limit 0\n";
print "graph_vlabel Active Sessions\n";
print "graph_period second\n";
print "graph_info Active Sessions\n";
print "sysActiveSessions.label Sessions\n";
print "sysActiveSessions.draw AREA\n";
exit 0;
}
if (defined ($response = $session->get_request($sysActiveSessions)))
{
print "sysActiveSessions.value ", $response->{$sysActiveSessions}, "\n";
}
else
{
print "sysActiveSessions.value U\n";
}
# vim:syntax=perl