#!/bin/bash STATE_OK=0 STATE_WARNING=1 STATE_CRITICAL=2 STATE_UNKNOWN=3 MYVOL=$1 WARNTHRESH=$2 CRITTHRESH=$3 RET=$? if [[ $RET -ne 0 ]] then echo "query problem - No data received from host" exit $STATE_UNKNOWN fi vdf -h -P | grep -E '^/vmfs/volumes/' | awk '{ print $2 " " $3 " " $4 " " $5 " " $6 }' | while read output ; do DISKSIZE=$(echo $output | awk '{ print $1 }' ) DISKUSED=$(echo $output | awk '{ print $2 }' ) DISKAVAILABLE=$(echo $output | awk '{ print $3 }' ) PERCENTINUSE=$(echo $output | awk '{ print $4 }' ) VOLNAME=$(echo $output | awk '{ print $5 }' ) CUTPERC=$(echo $PERCENTINUSE | cut -d'%' -f1 ) if [ "/vmfs/volumes/$MYVOL" = $VOLNAME ] ; then if [ $CUTPERC -lt $WARNTHRESH ] ; then echo "OK - $PERCENTINUSE used | Volume=$MYVOL Size=$DISKSIZE Used=$DISKUSED Available=$DISKAVAILABLE PercentUsed=$PERCENTINUSE" exit $STATE_OK fi if [ $CUTPERC -ge $CRITTHRESH ] ; then echo "CRITICAL - *$PERCENTINUSE used* | Volume=$MYVOL Size=$DISKSIZE Used=$DISKUSED Available=$DISKAVAILABLE PercentUsed=$PERCENTINUSE" exit $STATE_CRITICAL fi if [ $CUTPERC -ge $WARNTHRESH ] ; then echo "WARNING - *$PERCENTINUSE used* | Volume=$MYVOL Size=$DISKSIZE Used=$DISKUSED Available=$DISKAVAILABLE PercentUsed=$PERCENTINUSE" exit $STATE_WARNING fi fi #echo "No data returned" #exit $STATE_UNKNOWN done