셸 + sendmail 로 서버 모니터링 경보 스 크 립 트 구현
wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz
tar zxvf sendEmail-v1.56.tar.gz
cp sendEmail-v1.56/sendEmail /shell/check/
cat >> check.sh <
파일 -- check. sh:
#!/bin/bash
checkmail() {
/usr/bin/perl ./sendEmail -f [email protected] -t [email protected] �Ccc [email protected] [email protected]
-u "$subject" -m "$data" -s smtp.mail.com -xu userid -xp password
sleep 300
}
while true;do
loadavg=`awk '{print $2}' /proc/loadavg`
diskuse=`df |awk '/cache/{print $5}'`
servrun=`netstat -pln|awk -F/ '/:80/{print $NF}'`
ip=`ifconfig|awk '/cast/{print $2}'|awk -F: '{if(NR==1){a=$2}else if(NR==2){b=$2}}END{print b"-"a}'`
data=`echo -e "ip:$ip
loadavg/5min:$loadavg\tcacheuse%:$diskuse\tservice:$servrun"`
diskper=`echo $diskuse|sed 's/%//'`
num=`ps aux|grep check.sh|grep -v grep|wc -l`
if [[ $num > 2 ]];then
break 2
fi
if [[ $loadavg > 1.00 ]] && [[ $diskper > 90 ]];then
subject="warning-$ip-loadavg-disk"
checkmail
else if [[ $loadavg > 1.00 ]];then
subject="warning-$ip-loadavg"
checkmail
else if [[ $diskper > 90 ]];then
subject="warning-$ip-disk"
checkmail
fi
sleep 60
done
EOF
완료, sh check. sh & >/dev/null 을 실행 하면 됩 니 다.경보 메 일: 제목: warning - 192.168.0.100 - 10.10.10 - disk ip: 192.168.0.100 - 10.10.10 loadavg/5min: 0.38 cacheuse%: 94% service: nginx
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.