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:
parent
4b400a7320
commit
e777037d06
27 changed files with 15 additions and 15 deletions
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
Loading…
Add table
Add a link
Reference in a new issue