셸 모니터링 스 크 립 트 - 모니터링 네트워크
cat chk_ping.sh
#!/bin/bash
#
#script_name:chk_ping.sh
#check network
#
#last update 20130320 by dongnan
#bbs# http://bbs.ywwd.net/
#blog# http://dngood.blog.51cto.com
#lost
# ping -f -c 20 202.013.191.31
#PING 202.013.191.31 (202.11.191.31) 56(84) bytes of data.
#....................
#--- 202.013.191.31 ping statistics ---
#20 packets transmitted, 0 received, 100% packet loss, time 236ms
#delay
# ping -f -c 20 199.192.152.2
#PING 199.192.152.2 (199.192.152.2) 56(84) bytes of data.
#--- 199.192.152.2 ping statistics ---
#20 packets transmitted, 20 received, 0% packet loss, time 227ms
#rtt min/avg/max/mdev = 266.758/268.957/272.593/1.787 ms, pipe 20, ipg/ewma 11.959/269.829 ms
#
#variables
ping=/bin/ping
delay_limit=100
loss_limit=20
sh_dir=/root/sh/
crondir=${sh_dir}crontab
source ${sh_dir}CONFIG
user=`id -u`
hosts="$ALLHOSTS"
#main
#root
if [ "$user" -ne 0 ];then
echo "must root !!"
exit 1
fi
#
for HOST in $hosts ;do
flag_ping_file="$crondir/log/$HOST.ping"
error_log="$crondir/log/ping_error.log"
#true
if ! $ping -W 2 -f -c 10 $HOST > $crondir/log/ping.log 2>&1;then
grep "packet loss" $crondir/log/ping.log >$crondir/log/ping.loss
# 0, delay loss
loss=`awk '{print $6}' $crondir/log/ping.loss | awk -F% '{print $1}'`
#loss ,
if [ "$loss" -ge "$loss_limit" ];then
if [ ! -f $flag_ping_file ];then
#sms
#for mobile in $MOBILES;do
#echo "Monitor to $HOST delay $delay'ms;$loss% packet loss" | /usr/local/bin/gammu --sendsms TEXT "$mobile" -unicode
#done
#mail
for mail in $MAILS;do
echo "Monitor to $HOST $loss% packet loss" | mail -s "$HOST lost" $mail
done
#log
date +'%F %T' >>$error_log
cat $crondir/log/ping.log >>$error_log
# flag
echo "$HOST network error" >$flag_ping_file
fi
fi
#false
else
#loss ,
if [ -f $flag_ping_file ];then
#sms
#for mobile in $MOBILES;do
#echo "$HOST network ok"|/usr/local/bin/gammu --sendsms TEXT "$mobile" -unicode
#done
#mail
for mail in $MAILS;do
echo "$HOST network ok" | mail -s "$HOST network ok" $MAILS
done
#delete flag
rm -f $flag_ping_file
fi
#
fi
#
done
종료 더 많은 요청: 링크 ux 시스템 운영 37275208 vmware 가상 화 166682360
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
리눅스 입문~컴퓨터 시스템의 하드웨어의 개요와 리눅스의 주요 기능과 그 구조의 개요~별도의 기사에서 각 Linux의 기능인 프로세스 및 메모리 관리 메커니즘에 대한 자세한 내용을 요약합니다. 입력 장치, 네트워크 어댑터를 통해 컴퓨터에서 처리를 수행하도록 요청 프로세스 관리 메모리 관리 장치 조작 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.