Build precise queries to find exactly what you need
Press ESC to close
Join our next live webinar: “Advanced Nagios Monitoring Techniques” – Register Now
Your review has been submitted and is pending approval.
This Plugin allows to check disk utilization on hard disks. It uses iostat -x.
Examples:
check_disk_util -w 80 -c 90 -d sda Checks /dev/sda* at 80% and 90% of disk utilization
OK: sda disk utilization 2.52% OK: sda1 disk utilization 0.00% OK: sda2 disk utilization 1.31% OK: sda3 disk utilization 1.52% OK: sda4 disk utilization 0.05%
Current Version
0.1 Gamma "Hulk state"
Last Release Date
2014-06-10
Owner
Esteban Monge
License
BSD
Compatible With
#!/bin/bash # ---------------------------------------------------- # # File : check_disk_util.sh # Author : Esteban Monge # Email : [email protected] # Date : 10/06/2014 # Version: 0.1 Gamma "Hulk state" # ---------------------------------------------------- # device="" warning=80 critical=90 was_warning="" was_critical="" function help { echo "Usage" echo "check_disk {-w limit -c limit -d device}" echo "Options:" echo "-h" echo " Print detailed help screen" echo "-w=INTEGER" echo " Exit with WARNING status if more than INTEGER percentaje of utilization are used" echo "-c=INTEGER" echo " Exit with CRITICAL status if more than INTEGER percentaje of utilization are used" echo "-d=" echo " Device without complete route" echo " " echo "Example:" echo "check_disk_util -w 80 -c 90 -d sda1" echo " Checks /dev/sda1 at 80% and 90% of disk utilization" echo "check_disk_util -w 80 -c 90 -d sda" echo " Checks /dev/sda1, /dev/sda2, /dev/sda3, etc (regular expression) at 80% and 90% of disk utilization" exit 0 } while getopts "w:c:d:h" args; do case $args in w) warning=$OPTARG ;; c) critical=$OPTARG ;; d) device=$OPTARG ;; h) help ;; esac done if [[ $critical -lt $warning ]];then echo "UNKNOWN: Warning threshold must be lower than Critical threshold" exit 4 fi column_number=`iostat -x | grep -e "Device" | awk '{print NF}'` iostat -x 1 2 |grep -e "$device" | awk -v column=$column_number '/sd|dm/ {print $1,$column}' > /tmp/disk_utili.tmp radek=`cat /tmp/disk_utili.tmp | wc -l` polovina=`echo "$radek / 2 "| bc` cat /tmp/disk_utili.tmp | tail -n $polovina > /tmp/disk_utili1.tmp while read line do device=`echo $line | awk '{print $1}'` disk_util=`echo $line | awk '{print $2}' | cut -d "," -f1 ` if [ ${disk_util%.*} -ge $critical ];then echo "CRITICAL: $device disk utilization $disk_util%" was_critical=1 else if [ ${disk_util%.*} -ge $warning ];then echo "WARNING: $device disk utilization $disk_util%" was_warning=1 else echo "OK: $device disk utilization $disk_util%" fi fi done
You must be logged in to submit a review.
To:
From: