#!/bin/sh #count memory_used_rate,disk_used_rate #@yuanwb 2015-5 #disk_used_rate #Depend on real storage place the parameter 'Location' need to alter. Location=/dev/sda1 Disk_Used_Rate1=$(df -h | grep $Location | awk '{print $5}') free1=`echo $Disk_Used_Rate1|awk -F% '{print $1}'` subject1="(info) mysql主 /dev/sda1 硬盤空間小於95%" messagelog1="mysql主 /dev/sda1 硬盤空間使用率爲 $Disk_Used_Rate1 " subject2="(error) mysql主 /dev/sda1 硬盤空間大於95%" messagelog2="mysql主 /dev/sda1 硬盤空間使用率爲 $Disk_Used_Rate1 " if [ $free1 -lt 95 ]; then /usr/local/bin/sendEmail -s 172.20.101.63 -o message-charset="UTF-8" -xu admin@huiyewang.com -xp 1234565 -f admin@huiyewang.com -t monitor@huiyewang.com,luoyunfei@huiyewang.com,tangwenming@huiyewang.com -u "$subject1" -m "$messagelog1" else /usr/local/bin/sendEmail -s 172.20.101.63 -o message-charset="UTF-8" -xu admin@huiyewang.com -xp 1234565 -f admin@huiyewang.com -t monitor@huiyewang.com,luoyunfei@huiyewang.com,tangwenming@huiyewang.com -u "$subject2" -m "$messagelog2" fi Location=/dev/sda2 Disk_Used_Rate2=$(df -h | grep $Location | awk '{print $5}') echo $Disk_Used_Rate2 free1=`echo $Disk_Used_Rate2|awk -F% '{print $1}'` subject1="(info) mysql主 /dev/sda2 硬盤空間小於95%" messagelog1="mysql主 /dev/sda2 硬盤空間使用率爲 $Disk_Used_Rate2 " subject2="(error) mysql主 /dev/sda2 硬盤空間大於95%" messagelog2="mysql主 /dev/sda2 硬盤空間使用率爲 $Disk_Used_Rate2 " if [ $free1 -lt 95 ]; then /usr/local/bin/sendEmail -s 172.20.101.63 -o message-charset="UTF-8" -xu admin@huiyewang.com -xp 1234565 -f admin@huiyewang.com -t monitor@huiyewang.com,luoyunfei@huiyewang.com,tangwenming@huiyewang.com -u "$subject1" -m "$messagelog1" else /usr/local/bin/sendEmail -s 172.20.101.63 -o message-charset="UTF-8" -xu admin@huiyewang.com -xp 1234565 -f admin@huiyewang.com -t monitor@huiyewang.com,luoyunfei@huiyewang.com,tangwenming@huiyewang.com -u "$subject2" -m "$messagelog2" fi Location=/dev/sdb1 Disk_Used_Rate3=$(df -h | grep $Location | awk '{print $5}') echo $Disk_Used_Rate3 free1=`echo $Disk_Used_Rate3|awk -F% '{print $1}'` subject1="(info) mysql主 /dev/sdb1 硬盤空間小於95%" messagelog1="mysql主 /dev/sdb1 硬盤空間使用率爲 $Disk_Used_Rate3 " subject2="(error) mysql主 /dev/sdb1 硬盤空間大於95%" messagelog2="mysql主 /dev/sdb1 硬盤空間使用率爲 $Disk_Used_Rate3 " if [ $free1 -lt 95 ]; then /usr/local/bin/sendEmail -s 172.20.101.63 -o message-charset="UTF-8" -xu admin@huiyewang.com -xp 1234565 -f admin@huiyewang.com -t monitor@huiyewang.com,luoyunfei@huiyewang.com,tangwenming@huiyewang.com -u "$subject1" -m "$messagelog1" else /usr/local/bin/sendEmail -s 172.20.101.63 -o message-charset="UTF-8" -xu admin@huiyewang.com -xp 1234565 -f admin@huiyewang.com -t monitor@huiyewang.com,luoyunfei@huiyewang.com,tangwenming@huiyewang.com -u "$subject2" -m "$messagelog2" fi #memory_used_rate LoadMemory=$(cat /proc/meminfo | awk '{print $2}') Total=$(echo $LoadMemory | awk '{print $1}') Free1=$(echo $LoadMemory | awk '{print $2}') Free2=$(echo $LoadMemory | awk '{print $3}') Free3=$(echo $LoadMemory | awk '{print $4}') Used=`expr $Total - $Free1 - $Free2 - $Free3` Used_Rate=`expr $Used/$Total*100 | bc -l` Memory_Used_Rate=`expr $Used_Rate/1 | bc` echo $Memory_Used_Rate% free1=`echo $Memory_Used_Rate%|awk -F% '{print $1}'` subject1="(info) mysql主 內存使用率小於90%" messagelog1="mysql主 內存使用率爲 $Memory_Used_Rate " subject2="(error) mysql主 內存使用率大於90%" messagelog2="mysql主 內存使用率爲 $Memory_Used_Rate " if [ $free1 -lt 90 ]; then /usr/local/bin/sendEmail -s 172.20.101.63 -o message-charset="UTF-8" -xu admin@huiyewang.com -xp 1234565 -f admin@huiyewang.com -t monitor@huiyewang.com,luoyunfei@huiyewang.com,tangwenming@huiyewang.com -u "$subject1" -m "$messagelog1" else /usr/local/bin/sendEmail -s 172.20.101.63 -o message-charset="UTF-8" -xu admin@huiyewang.com -xp 1234565 -f admin@huiyewang.com -t monitor@huiyewang.com,luoyunfei@huiyewang.com,tangwenming@huiyewang.com -u "$subject2" -m "$messagelog2" fi #!/bin/bash b=`uptime|awk '{print $11}'|awk -F, '{print $1}'` subject1="(info) mysql主 cpu負載小於2" messagelog1="mysql主 cpu負載正常!!" subject2="(warn) mysql主 cpu負載大於2小於8" messagelog2="mysql主 cpu負載忙!!" subject3="(error) mysql主 cpu負載大於8!!" messagelog3="mysql主 cpu負載超負荷!!" a=`echo ${b%.*}` if [ $a -lt 2 ]; then /usr/local/bin/sendEmail -s 172.20.101.63 -o message-charset="UTF-8" -xu admin@huiyewang.com -xp 1234565 -f admin@huiyewang.com -t monitor@huiyewang.com,luoyunfei@huiyewang.com,tangwenming@huiyewang.com -u "$subject1" -m "$messagelog1" elif [ $a -gt 2 -a $a -lt 8 ]; then /usr/local/bin/sendEmail -s 172.20.101.63 -o message-charset="UTF-8" -xu admin@huiyewang.com -xp 1234565 -f admin@huiyewang.com -t monitor@huiyewang.com,luoyunfei@huiyewang.com,tangwenming@huiyewang.com -u "$subject2" -m "$messagelog2" else /usr/local/bin/sendEmail -s 172.20.101.63 -o message-charset="UTF-8" -xu admin@huiyewang.com -xp 1234565 -f admin@huiyewang.com -t monitor@huiyewang.com,luoyunfei@huiyewang.com,tangwenming@huiyewang.com -u "$subject3" -m "$messagelog3" fi