# HG changeset patch # User Sebastian Fiedler # Date 1548322087 -3600 # Node ID 69e41ec7fccc1b4108e6672eb9b96a0a322742ce # Parent d9cd7d16a0f42bb0c941cbefc81369c0551d1a71 moved to git diff -r d9cd7d16a0f4 -r 69e41ec7fccc Makefile --- a/Makefile Tue Mar 31 09:25:16 2015 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,22 +0,0 @@ -SCRIPTS = check_mem -CLEANFILES = ${SCRIPTS} -DESTDIR = -prefix = /usr - -plugindir = ${prefix}/lib/nagios/plugins/ius - -.PHONY: all clean install - -all: ${SCRIPTS} - -clean: - -rm -f ${CLEANFILES} - -install: all - install -d -m 0755 ${DESTDIR}/${plugindir} - install -m 0755 $(SCRIPTS) ${DESTDIR}/${plugindir}/ - -%: %.pl - @perl -c $< - @cp -f $< $@ - @chmod +x $@ diff -r d9cd7d16a0f4 -r 69e41ec7fccc check_mem.pl --- a/check_mem.pl Tue Mar 31 09:25:16 2015 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,173 +0,0 @@ -#! /usr/bin/perl -w - -# Copyright (C) 2011 Christian Arnold -# -# 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, either version 3 of the License, or -# (at your option) any later version. -# -# 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, see . -# -# Christian Arnold - -use 5.010; -use strict; -use File::Basename; -use Getopt::Long; -use Pod::Usage; - -delete @ENV{ grep /^LC_/ => keys %ENV }; -$ENV{LANG} = "C"; -$ENV{LC_ALL} = "C"; - -sub version($$); -sub get_meminfo(); -sub report($$$$); - -my %ERRORS = ( - OK => 0, - WARNING => 1, - CRITICAL => 2, - UNKNOWN => 3, - DEPENDENT => 4 -); - -my $ME = basename $0; -my $NAME = "MEM"; -my $VERSION = "0.3"; - -my %opt = ( - warning => 70, - critical => 90 -); - -MAIN: { - Getopt::Long::Configure('bundling'); - GetOptions( - "w|warning=i" => \$opt{warning}, - "c|critical=i" => \$opt{critical}, - "h|help" => sub { pod2usage( -verbose => 1, -exitval => $ERRORS{OK} ) }, - "m|man" => sub { pod2usage( -verbose => 2, -exitval => $ERRORS{OK} ) }, - "V|version" => sub { version( $ME, $VERSION ); exit $ERRORS{OK}; } - ) or pod2usage( -verbose => 1, -exitval => $ERRORS{CRITICAL} ); - - my ( $percent, $total, $used, $free ) = get_meminfo(); - report( $percent, $total, $used, $free ); -} - -sub report($$$$) { - my ( $percent, $total, $used, $free ) = @_; - - if ( $percent >= $opt{critical} ) { - say -"$NAME CRITICAL: $percent\% used memory - total: $total MB, used: $used MB, free: $free MB|MemUsed=$percent\%;$opt{warning};$opt{critical}"; - exit $ERRORS{CRITICAL}; - } - if ( $percent >= $opt{warning} ) { - say -"$NAME WARNING: $percent\% used memory - total: $total MB, used: $used MB, free: $free MB|MemUsed=$percent\%;$opt{warning};$opt{critical}"; - exit $ERRORS{WARNING}; - } - say -"$NAME OK: $percent\% used memory - total: $total MB, used: $used MB, free: $free MB|MemUsed=$percent\%;$opt{warning};$opt{critical}"; - exit $ERRORS{OK}; -} - -sub get_meminfo() { - my ( $total, $used, $free, $percent ); - my @cmd = ( '/usr/bin/free', '-m' ); - - foreach (`/usr/bin/free -m`) { - /^Mem:\s+(?[\d.]+)/ - and $total = $+{total} - and next; - /^.+buffers\/cache:\s+(?[\d.]+)/ - and $used = $+{used} - and last; - } - - $free = ( $total - $used ); - $percent = ( sprintf( "%.0f", ( $used / $total ) * 100 ) ); - - return ( $percent, $total, $used, $free ); -} - -sub version($$) { - my ( $progname, $version ) = @_; - - say <<_VERSION; -$progname version $version -Copyright (C) 2011 by Christian Arnold and Schlittermann internet & unix support. - -$ME comes with ABSOLUTELY NO WARRANTY. This is free software, -and you are welcome to redistribute it under certain conditions. -See the GNU General Public Licence for details. -_VERSION -} - -__END__ - -=head1 NAME - -check_mem - nagios plugin to check memory usage - -=head1 SYNOPSIS - -check_mem [B<-w>|B<--warning> I] [B<-c>|B<--critical> I] - -check_mem [B<-h>|B<--help>] - -check_mem [B<-m>|B<--man>] - -check_mem [B<-v>|B<--version>] - -=head1 OPTIONS - -=over - -=item B<-w>|B<--warning> I - -Exit with WARNING status if memory usage in percent exceeds this value (default: 70) - -=item B<-c>|B<--critical> I - -Exit with CRITICAL status if memory usage in percent exceeds this value (default: 90) - -=item B<-h>|B<--help> - -Print detailed help screen. - -=item B<-m>|B<--man> - -Print manual page. - -=item B<-V>|B<--version> - -Print version information. - -=back - -=head1 DESCRIPTION - -This nagios plugin check the memory usage. - -=head1 VERSION - -This man page is current for version 0.3 of B. - -=head1 AUTHOR - -Written by Christian Arnold L - -=head1 COPYRIGHT - -Copyright (C) 2011 by Christian Arnold and Schlittermann internet & unix support. -This is free software, and you are welcome to redistribute it under certain conditions. -See the GNU General Public Licence for details. diff -r d9cd7d16a0f4 -r 69e41ec7fccc debian/changelog --- a/debian/changelog Tue Mar 31 09:25:16 2015 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,24 +0,0 @@ -nagios-plugin-mem (0.4) oldstable stable; urgency=medium - - * changed maintainer - * removed dependency on perl-doc - - -- Heiko Schlittermann (HS12-RIPE) Tue, 31 Mar 2015 09:24:59 +0200 - -nagios-plugin-mem (0.3) stable; urgency=low - - * fixing lintian errors and warnings - - -- Christian Arnold Tue, 04 Oct 2011 14:32:28 +0200 - -nagios-plugin-mem (0.2) lenny squeeze; urgency=low - - * now output memory usage without buffers and cached files - - -- Christian Arnold Thu, 30 Jun 2011 15:54:29 +0200 - -nagios-plugin-mem (0.1) lenny squeeze; urgency=low - - * Initial Release. - - -- Christian Arnold Thu, 30 Jun 2011 14:27:52 +0200 diff -r d9cd7d16a0f4 -r 69e41ec7fccc debian/compat --- a/debian/compat Tue Mar 31 09:25:16 2015 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -7 diff -r d9cd7d16a0f4 -r 69e41ec7fccc debian/control --- a/debian/control Tue Mar 31 09:25:16 2015 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,13 +0,0 @@ -Source: nagios-plugin-mem -Section: net -Priority: extra -Maintainer: Heiko Schlittermann (HS12-RIPE) -Build-Depends: debhelper (>= 7) -Standards-Version: 3.9.1 -Homepage: https://keller.schlittermann.de/hg/ius/nagios/nagios-plugin-mem/ - -Package: nagios-plugin-mem -Architecture: all -Depends: ${misc:Depends}, ${perl:Depends} -Description: nagios plugin to check the memory usage - This nagios plugin checks the percent memory usage of the system. diff -r d9cd7d16a0f4 -r 69e41ec7fccc debian/copyright --- a/debian/copyright Tue Mar 31 09:25:16 2015 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,39 +0,0 @@ -This work was packaged for Debian by: - - Christian Arnold on Thu, 30 Jun 2011 14:27:52 +0200 - -It was downloaded from: - - https://keller.schlittermann.de/hg/ius/nagios/nagios-plugin-mem/ - -Upstream Author(s): - - Christian Arnold - -Copyright: - - Copyright (C) 2011 Schlittermann internet & unix support - -License: - - 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, either version 3 of the License, or - (at your option) any later version. - - This package 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, see . - -On Debian systems, the complete text of the GNU General -Public License version 3 can be found in "/usr/share/common-licenses/GPL-3". - -The Debian packaging is: - - Copyright (C) 2011 Christian Arnold - -and is licensed under the GPL version 3, see above. diff -r d9cd7d16a0f4 -r 69e41ec7fccc debian/docs diff -r d9cd7d16a0f4 -r 69e41ec7fccc debian/rules --- a/debian/rules Tue Mar 31 09:25:16 2015 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,13 +0,0 @@ -#!/usr/bin/make -f -# -*- makefile -*- -# Sample debian/rules that uses debhelper. -# This file was originally written by Joey Hess and Craig Small. -# As a special exception, when this file is copied by dh-make into a -# dh-make output file, you may use that output file without restriction. -# This special exception was added by Craig Small in version 0.37 of dh-make. - -# Uncomment this to turn on verbose mode. -#export DH_VERBOSE=1 - -%: - dh $@ diff -r d9cd7d16a0f4 -r 69e41ec7fccc debian/source/format --- a/debian/source/format Tue Mar 31 09:25:16 2015 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -3.0 (native)