diff options
| author | Stanley Hopcroft <stanleyhopcroft@users.sourceforge.net> | 2003-04-08 00:00:39 +0000 |
|---|---|---|
| committer | Stanley Hopcroft <stanleyhopcroft@users.sourceforge.net> | 2003-04-08 00:00:39 +0000 |
| commit | 6326b0f9045192beddf462fe4b5706349b8ff8b1 (patch) | |
| tree | 9afbe8d85b0a58afe4a56c9d3dc45fd7f4cbf0d9 /contrib | |
| parent | 7f2b0c8b5fda2d030f1e6534fc5d115eaf64b2b8 (diff) | |
| download | monitoring-plugins-6326b0f9045192beddf462fe4b5706349b8ff8b1.tar.gz | |
check_axis.sh (Axis 5xx print servers) from Tom De Blende
git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@477 f882894a-f735-0410-b71e-b25c423dba1c
Diffstat (limited to 'contrib')
| -rw-r--r-- | contrib/check_axis.sh | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/contrib/check_axis.sh b/contrib/check_axis.sh new file mode 100644 index 00000000..e97d4cd6 --- /dev/null +++ b/contrib/check_axis.sh | |||
| @@ -0,0 +1,93 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | box=$1 | ||
| 4 | port=$2 | ||
| 5 | usr=$3 | ||
| 6 | pass=$4 | ||
| 7 | |||
| 8 | if [ ! "$#" == "4" ]; then | ||
| 9 | echo -e "\nYou did not supply enough command line arguments. \nUsage: ./check_axis.sh <host> <port> <username> <password> \n \nCheck_axis.sh checks the status of LPT ports on Axis print servers. \nIt was written by Tom De Blende (tom.deblende@village.uunet.be) in 2002. \n" && exit "3" | ||
| 10 | fi | ||
| 11 | |||
| 12 | tempfile=/tmp/status-$box.tmp | ||
| 13 | exit="3" | ||
| 14 | |||
| 15 | ftp -in $box &>/dev/null <<EOF | ||
| 16 | user $usr $pass | ||
| 17 | passive | ||
| 18 | prompt off | ||
| 19 | lcd /tmp | ||
| 20 | ascii | ||
| 21 | get status $tempfile | ||
| 22 | EOF | ||
| 23 | |||
| 24 | if [ ! -e "$tempfile" ]; then | ||
| 25 | stdio="Status file could not be transferred from the Axis box." && rm -f $tempfile && echo $stdio && exit 2; | ||
| 26 | fi | ||
| 27 | |||
| 28 | lines=`cat $tempfile | grep -i $port` | ||
| 29 | status=`echo $lines | awk '{ print $3 }'` | ||
| 30 | if [ "$status" == "Printing" ]; then | ||
| 31 | bytes=`echo $lines | awk '{ print $4 }'`; | ||
| 32 | comments=`echo $lines | tr -d " | ||
| 33 | " | awk '{ print $5 " " $6 }'`; | ||
| 34 | else | ||
| 35 | comments=`echo $lines | tr -d " | ||
| 36 | " | awk '{ print $4 " " $5 }'`; | ||
| 37 | fi | ||
| 38 | |||
| 39 | comma=`echo $comments | grep , | wc -l` | ||
| 40 | if [ "$comma" -eq "1" ]; then | ||
| 41 | comments=`echo $comments | cut -d, -f1` | ||
| 42 | fi | ||
| 43 | |||
| 44 | |||
| 45 | if [ "$status" == "Available" ]; then | ||
| 46 | if [ "$comments" == "Paper out" ]; then | ||
| 47 | exit="1" && stdio="WARNING - Out of paper."; | ||
| 48 | elif [ "$comments" == " " ]; then | ||
| 49 | exit="0" && stdio="OK - Printer is available but returns no comments."; | ||
| 50 | elif [ "$comments" == "No error" ]; then | ||
| 51 | exit="0" && stdio="OK - No error."; | ||
| 52 | elif [ "$comments" == "Ready " ]; then | ||
| 53 | exit="0" && stdio="OK - Ready."; | ||
| 54 | elif [ "$comments" == "Off line" ]; then | ||
| 55 | exit="1" && stdio="WARNING - Printer is off line."; | ||
| 56 | elif [ "$comments" == "Out of" ]; then | ||
| 57 | exit="1" && stdio="WARNING - Out of paper."; | ||
| 58 | elif [ "$comments" == "Busy Out" ]; then | ||
| 59 | exit="1" && stdio="WARNING - Busy, out of paper."; | ||
| 60 | elif [ "$comments" == "Printer off-line" ]; then | ||
| 61 | exit="1" && stdio="WARNING - Printer is off line."; | ||
| 62 | elif [ "$comments" == "Printer fault" ]; then | ||
| 63 | exit="2" && stdio="CRITICAL - Printer fault."; | ||
| 64 | else | ||
| 65 | exit="3" && stdio="Comments: $comments"; | ||
| 66 | fi | ||
| 67 | elif [ "$status" == "Printing" ]; then | ||
| 68 | if [ "$comments" == "Printer busy" ]; then | ||
| 69 | exit="0" && stdio="OK - PRINTING. Bytes printed: $bytes."; | ||
| 70 | elif [ "$comments" == "No error" ]; then | ||
| 71 | exit="0" && stdio="OK - PRINTING. Bytes printed: $bytes."; | ||
| 72 | elif [ "$comments" == "Paper out" ]; then | ||
| 73 | exit="1" && stdio="WARNING - PRINTING. Out of paper."; | ||
| 74 | elif [ "$comments" == "Out of" ]; then | ||
| 75 | exit="1" && stdio="WARNING - PRINTING. Out of paper. Bytes printed: $bytes."; | ||
| 76 | elif [ "$comments" == "Ready " ]; then | ||
| 77 | exit="0" && stdio="OK - PRINTING. Bytes printed: $bytes."; | ||
| 78 | elif [ "$comments" == "Printer off-line" ]; then | ||
| 79 | exit="1" && stdio="WARNING - PRINTING. Printer is off line."; | ||
| 80 | elif [ "$comments" == "Busy " ]; then | ||
| 81 | exit="0" && stdio="OK - PRINTING. Busy. Bytes printed: $bytes."; | ||
| 82 | elif [ "$comments" == "Off line" ]; then | ||
| 83 | exit="1" && stdio="WARNING - PRINTING. Printer is off line."; | ||
| 84 | elif [ "$comments" == "Printer fault" ]; then | ||
| 85 | exit="2" && stdio="CRITICAL - PRINTING. Printer fault. Bytes printed: $bytes."; | ||
| 86 | else | ||
| 87 | exit="3" && stdio="Comments: $comments."; | ||
| 88 | fi | ||
| 89 | fi | ||
| 90 | |||
| 91 | rm -f $tempfile | ||
| 92 | echo $stdio | ||
| 93 | exit $exit | ||
