check_remote_websites.sh: Check until 3 times before reporting an error.

This commit is contained in:
Christoph 2018-03-12 10:51:46 +01:00
parent f66029fe95
commit 68f1cc8248

View File

@ -198,17 +198,29 @@ fi
if [[ -n "$WEBSITES_TO_CHECK" ]] ; then
for _site in $WEBSITES_TO_CHECK ; do
echononl " Check site \033[1m$_site\033[m .."
response="$(curl --max-time $TIME_OUT --connect-timeout 30 \
-I -k -L --write-out %{http_code} --silent --output /dev/null $_site 2> ${LOCK_DIR}/err.msg)"
if [[ "$response" -eq 200 ]]; then
echo_ok
else
declare -i i=0
_sucess=false
while [[ $i -lt 3 ]] ; do
response="$(curl --max-time $TIME_OUT --connect-timeout 30 \
-I -k -L --write-out %{http_code} --silent --output /dev/null $_site 2> ${LOCK_DIR}/err.msg)"
if [[ "$response" -eq 200 ]]; then
echo_ok
_sucess=true
break
fi
sleep 2
((i++))
done
if ! $_success ; then
echo_failed
if [[ -s "$(cat ${LOCK_DIR}/err.msg)" ]] ; then
error "$(cat ${LOCK_DIR}/err.msg)"
fi
websites_failed_arr+=("$_site")
fi
done
else
warn "No Website to check given (empty var 'WEBSITES_TO_CHECK')"