Infra Structure/Jenkins
[Jenkins] Health check
하 선생
2022. 2. 26. 16:51
- Build periodically
- 5분마다 실행
H/5 * * * *
- Build
#!/bin/bash
url='http://10.10.10.10:8080/'
attempts=3
timeout=10
online=false
echo "Checking status of $url."
for (( i=1; i<=$attempts; i++ ))
do
code=`curl -sL --connect-timeout 20 --max-time 30 -w "%{http_code}\\n" "$url" -o /dev/null`
if [ "$code" = "200" ]; then
online=true
break
else
sleep $timeout
fi
done
if $online; then
echo "Monitor finished, website is online."
exit 0 # Build Success
else
echo "Monitor failed, website seems to be down."
exit 1 # Build Failed
fi
# HTTPS (ssl) 적용시 --insecure 옵션 추가
code=`curl -sL --connect-timeout 20 --max-time 30 -w "%{http_code}\\n" "$url" -o /dev/null --insecure`
- 참고
https://www.wouterbulten.nl/blog/tech/website-status-monitor-using-jenkins/