Teams Alert
๊ธฐ์กด ์๋ฒ๊ฐ ์ฅ์ ๋ก ์ธํด ์ฃฝ์์ ๋

์ด๋ฐ์์ผ๋ก ํ์ฆ ๋ฉ์ ์ ์๋์ด ์ด.
์ด๋ ๊ฒ ๋ฉ์์ง๊ฐ ์ฌ ๋ ๋ฐ๊ฒฌ์โ ๊ธฐ์ ์ด์ฌ๋ ๋๋ ๊ธฐ์ PM ํธ์ถ โ ๊ฐ๋ฐํ ํธ์ถ โ ๋ฌธ์ ํด๊ฒฐ
์ด๋ฐ ๋ฐฉ์์ผ๋ก ๋ฌธ์ ๋ฅผ ํด๊ฒฐํด ์๋๋ฐ ํธ์ถ์ ์กฐ๊ธ์ด๋ผ๋ ์ค์ด๊ธฐ ์ํด shell script ๋ก ์ค์ผ์ค๋ฌ๋ฅผ ๋๋ ค ์๋ฒ ์ํฉ์ 5๋ถ ๋๋ 30๋ถ ์ ํ๋ฒ ์ฉ ํ์ธ ํ ํ์ฆ ์๋ฆผ์ผ๋ก ๋ณด๋ด๋ ์ค์ผ์ค๋ฌ๋ฅผ ์ ์

๊ฒฐ๊ณผ
tomcat ํ๋ก์ธ์ค๋ฅผ ์ฒดํฌํด์ tomcat ํ๋ก์ธ์ค๊ฐ ์ฃฝ์์ ๋ ์๋ฆผ์ ๋ณด๋ด๋ ์คํฌ๋ฆฝํธ ์์ฑ ํ ์๋ฒ ๋จ์ด์ง๋ฉด ๋ฐ๋ก ์๋๊ฐ ๊ฐ๋ฅ
๊ธฐ์กด ์๋ฒ ์ฉ๋ ๋ถ์กฑ์ผ๋ก ์ธํด ๋ก๊ทธ๊ฐ ์์ด์ง ์๊ณ ์ฅ์ ๋ฐ์์ผ๋ก ์๋ฒ๊ฐ ์ฃฝ๋ ์ํฉ์ด ๋ฐ์
์ด๋ฌํ ์ํฉ์ ๋ฐฉ์งํ๊ณ ์ server size ๋ฅผ ์ฒดํฌํด์ ์๋ฆผ์ผ๋ก ๋ณด๋ด๋ ์ค์ผ์ค๋ฌ ์์ฑ

################################################################################
################################################################################
PASSWD="password"
##################################################
# /home/happytuk
##################################################
curDir=$(pwd)
SSH_STDIN=$curDir/ssh_stdin
#
# for SSH
sshOption="-T -o StrictHostKeyChecking=no -o ConnectTimeout=1 -o NumberOfPasswordPrompts=1"
#
##################################################
# SAMPLE: SVR_LIST="172.25.49.135 172.25.49.136"
##################################################
SVR_LIST="ip1 ip2 ip3 ip4 ip5"
mpList=$(eval echo $SVR_LIST)
##################################################
# ์ ๋ฌ๋ฐ์ ์ ์กํ URL ์ฃผ์๋ฅผ ์
๋ ฅํ๋ค=> $1
##################################################
RESULT_LIST=""
for idx in $mpList
do
#echo "IP:::"$idx
#vvv=$(bash -c -s "cat </dev/null> /dev/tcp/${idx}/22")
_STATUS=$(timeout 1 bash -c "cat < /dev/null > /dev/tcp/${idx}/22"; if [ $? -gt 0 ]; then echo "fail"; else echo "ok"; fi);
if [ "$_STATUS" == "ok" ]; then
checkingVal=$(echo $PASSWD | $SSH_STDIN ssh $sshOption "user@"$idx "df -lh /* |grep '/dev/sda1' | head -1 | awk '{print \$5}' | sed 's/%//g'")
#echo "IP:::$idx:$checkingVal"
if [ $checkingVal -ge 90 ];then
RESULT_LIST+="${idx} : ${checkingVal}% \n\n"
fi
else
RESULT_LIST+="${idx} : SSH ์ ์์ ์ค๋ฅ๊ฐ ๋ฐ์ํ์์ต๋๋ค.\n\n"
fi
done
RESULTLENGTH=`echo $RESULT_LIST | awk '{print length($0)}'`
if [ $RESULTLENGTH -gt 0 ];then
curl -d '{"@context":"https://schema.org/extensions","@type":"MessageCard","themeColor":"#0072C6","title": "[NOTICE] azure vmss Sever DISK ์ฒดํฌ", "text": "'"$RESULT_LIST"'" }' -H "Content-Type: Application/JSON" -X POST <webhook url>
fi
exit 0
Last updated
Was this helpful?