Obrigado "coredump". Você me deu a dica que eu precisava para resolver o problema. Vou usar uma combinação de CURL e também a resposta em página .
Aqui está o que eu criei, o que parece funcionar para mim. Se você puder melhorar essa resposta, eu posso conceder os pontos para você.
#!/bin/bash
rm -f listening.htm
curl -s --connect-timeout 10 --insecure $1 > listening.htm
RETVAL=$?
echo "Curl return value : $RETVAL"
if [ $RETVAL -eq 2 ]; then
echo "Missing URL parameter. Add URL and try again."
fi
if [ $RETVAL -eq 6 ]; then
echo "Unable to resolve host. Check URL and try again."
fi
if [ $RETVAL -eq 0 ]; then
echo "Is the site listening...?"
elif [ $RETVAL -eq 7 ]; then
echo "Server timeout."
elif [ $RETVAL -eq 22 ];then
echo "HTTP error above 400"
else
rm listening.htm
exit 1
fi
if grep -Fq "The site is listening..." listening.htm
then
echo "Health is ok."
else
echo "Service didn't respond. Stopping."
/home/ec2-user/SITE/stopService.sh
sleep 6
echo "Starting service."
/home/ec2-user/SITE/startService.sh
sleep 10
echo "Restarted at 'date'" >> monitor.log
rm listening.htm
fi
exit 1