User Tools

Site Tools


blog:check_netio_1.1_debian

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
blog:check_netio_1.1_debian [2011-05-22 16:42] brbblog:check_netio_1.1_debian [2011-05-22 16:42] (current) – removed brb
Line 1: Line 1:
-<code bash> 
-#!/bin/sh 
-############################################### 
-# 
-# Nagios script to check network I/O status 
-# 
-# Copyright 2007, 2008 Ian Yates 
-# 
-# See usage for command line switches 
- 
-# NOTE: Because of the method of gathering information, bytes/s values are calculated here, so no wanring/critical values can be set to trigger.  
-#       Consequently, this check plugin always returns OK. 
-#       This plugin is a means of returning stats to nagios for graphing (recommend DERIVE graph in RRD) 
-# 
-# Created: 2007-09-06 (i.yates@uea.ac.uk) 
-# Updated: 2007-09-06 (i.yates@uea.ac.uk) 
-# Updated: 2008-11-27 (i.yates@uea.ac.uk) - Added GPLv3 licence 
-# Updated: 2011-05-22 (b.brunner@it-transforms.ch) Changed paths for debian 
-# 
-# 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 <http://www.gnu.org/licenses/>. 
- 
-############################################### 
-. /usr/lib/nagios/plugins/utils.sh 
  
-#. /usr/local/nagios/libexec/utils.sh 
- 
- 
-VERSION="1.1" 
- 
-IFCONFIG=/sbin/ifconfig 
-GREP=/bin/grep 
-CUT=/usr/bin/cut 
- 
-FLAG_VERBOSE=FALSE 
-INTERFACE="" 
-LEVEL_WARN="0" 
-LEVEL_CRIT="0" 
-RESULT="" 
-EXIT_STATUS=$STATE_OK 
- 
- 
- 
-############################################### 
-# 
-## FUNCTIONS  
-# 
- 
-## Print usage 
-usage() { 
-        echo " check_netio $VERSION - Nagios network I/O check script" 
-        echo "" 
-        echo " Usage: check_netio {-i} [ -v ] [ -h ]" 
-        echo "" 
-        echo "           -i  Interface to check (e.g. eth0)" 
-        echo "           -v  Verbose output (ignored for now)" 
-        echo "           -h  Show this page" 
-        echo "" 
-} 
-  
-## Process command line options 
-doopts() { 
-        if ( `test 0 -lt $#` ) 
-        then 
-                while getopts i:vh myarg "$@" 
-                do 
-                        case $myarg in 
-                                h|\?) 
-                                        usage 
-                                        exit;; 
-                                i) 
-                                        INTERFACE=$OPTARG;; 
-                                v) 
-                                        FLAG_VERBOSE=TRUE;; 
-                                *)      # Default 
-                                        usage 
-                                        exit;; 
-                        esac 
-                done 
-        else 
-                usage 
-                exit 
-        fi 
-} 
- 
- 
-# Write output and return result 
-theend() { 
-        echo $RESULT 
-        exit $EXIT_STATUS 
-} 
- 
- 
-# 
-## END FUNCTIONS  
-# 
- 
-############################################# 
-# 
-## MAIN  
-# 
- 
- 
-# Handle command line options 
-doopts $@ 
- 
-# Do the do 
- 
-BYTES_RX=`$IFCONFIG $INTERFACE | $GREP 'bytes' | $CUT -d":" -f2 | $CUT -d" " -f1` 
-BYTES_TX=`$IFCONFIG $INTERFACE | $GREP 'bytes' | $CUT -d":" -f3 | $CUT -d" " -f1` 
- 
-RESULT="NETIO OK - $INTERFACE: RX=$BYTES_RX, TX=$BYTES_TX" 
- 
-# Quit and return information and exit status 
-theend 
- 
-</code> 
blog/check_netio_1.1_debian.1306075324.txt.gz · Last modified: 2011-05-22 16:42 by brb