File: //lib64/nagios/plugins/check_a2_omni_website.sh
#!/bin/bash
omniurl="https://omni.a2hosting.com/account/login/?next=/"
# Time in seconds to wait before timing out
timeout_threshold=5
# Time in milli seconds after which to set state to warning
warning_threshold=1500
ret=$(timeout "${timeout_threshold}" curl --insecure -so /dev/null -w 'time_total: %{time_total}\ncode: %{http_code}\n' "${omniurl}")
if [ $? -ne 0 ]; then
echo "check_a2_omni_website.sh - omni login page timed out - I gave up after ${timeout_threshold} seconds."
exit 2
fi
time=$(echo "${ret}" | grep time_total | awk '{print $2}')
code=$(echo "${ret}" | grep code | awk '{print $2}')
timems=$(echo "${time}"'*1000' | bc | cut -d. -f1)
if [[ "${code}" -ne 200 ]]; then
echo "check_a2_omni_website.sh - did not receive a 200 for omni login page, we received ${code}"
exit 2
fi
if [[ "${timems}" -gt "${warning_threshold}" ]]; then
echo "check_a2_omni_website.sh - omni login page took ${timems} ms to load"
exit 2
fi
echo "check_a2_omni_website.sh - omni login page took ${timems} ms to load"
exit 0