check_local_webservice.sh: add last lnes of some logfiles to script output /emaol alerts).

This commit is contained in:
Christoph 2021-09-23 22:14:39 +02:00
parent 9beb4e1080
commit cf29c039c5
2 changed files with 77 additions and 2 deletions

View File

@ -250,13 +250,57 @@ else
clean_up 10
fi
msg_head="\n==========\nSystem logfiles\n==========\n"
msg00="Last entries (20 lines) of \"/var/log/syslog\":"
msg01="==============================================="
msg02=`tail -n 20 /var/log/syslog`
msg03="Last entries (20 lines) of \"/var/log/messages\":"
msg04="================================================="
msg05=`tail -n 20 /var/log/messages`
msg06="Last entries (20 lines) of \"/var/log/auth.log\":"
msg07="================================================="
msg08=`tail -n 20 /var/log/auth.log`
msg09="Last entries (20 lines) of \"/var/log/daemon.log\":"
msg10="================================================="
msg11=`tail -n 20 /var/log/daemon.log`
msg12="Last entries (20 lines) of \"/var/log/kern.log\":"
msg13="================================================="
msg14=`tail -n 20 /var/log/kern.log`
msg15="Lastlog:"
msg16="========"
msg17=`lastlog`
msg18="dmesg:"
msg19="======"
msg20=`dmesg -T`
msg="${msg_head}\n${msg00}\n${msg01}\n${msg02}\n\n${msg03}\n${msg04}\n${msg05}\n\n${msg06}\n${msg07}\n${msg08}\n\n${msg09}\n${msg10}\n${msg11}\n\n${msg12}\n${msg13}\n${msg14}\n\n${msg15}\n${msg16}\n${msg17}\n\n${msg18}\n${msg19}\n${msg20}"
if [[ ${#LOG_FILES_TO_MONITOR} -gt 0 ]] ; then
msg_user_defined="\n==========\nUser defined logfiles\n==========\n"
for _log_file in $LOG_FILES_TO_MONITOR ; do
msg_user_defined="${msg_user_defined}\n---\nLast entries (20 lines) of \"${_log_file}\":\n---\n$(tail -n 20 ${_log_file})\n"
done
msg_user_defined="${msg_user_defined}\n\n"
else
msg_user_defined=""
fi
if [[ ! -f "$RESTART_CHECK_FILE" ]]; then
touch "$RESTART_CHECK_FILE"
error "The local webservice seems to be down. Some Websites do not respond as expected:"
err_msg="\n[ Error ]: The local webservice seems to be down. Some Websites do not respond as expected::\n\n"
err_msg="\n[ Warning ]: The local webservice seems to be down.\n\n Some Websites do not respond as expected:\n"
for _site in $LOCAL_WEBSITES_TO_CHECK ; do
err_msg+=" $_site\n"
@ -265,19 +309,43 @@ if [[ ! -f "$RESTART_CHECK_FILE" ]]; then
else
echo " $_site"
fi
err_msg="${err_msg} ${_site}\n"
done
err_msg="${err_msg}\nFor now nothing is to. because its the first time..\n"
datum="$(date +"%d.%m.%Y %H:%M")"
for _email in ${alert_email_arr[@]} ; do
echo -e "To:${_email}\n${content_type}\nSubject:[Warn: Local Webservice NOT rsponding] - Do nothing for now\n$err_msg" \
echo -e "To:${_email}\n${content_type}\nSubject:[Warn: Local Webservice NOT rsponding] - Do nothing for now\n$err_msg\n${msg_user_defined}\n${msg}" \
| sendmail -F "Error `hostname -f`" -f $sender_address $_email
done
clean_up 20
else
error "The local webservice is still down. Some Websites still not responding:"
err_msg="\n[ Error ]: The local webservice seems to be down.\n\n Some Websites still not responding:\n"
for _site in $LOCAL_WEBSITES_TO_CHECK ; do
err_msg+=" $_site\n"
if $LOGGING ; then
echo -e "\t \033[1m$_site\033[m"
else
echo " $_site"
fi
err_msg="${err_msg} ${_site}\n"
done
err_msg="${err_msg}\nGoing to restart the system..\n"
datum="$(date +"%d.%m.%Y %H:%M")"
for _email in ${alert_email_arr[@]} ; do
echo -e "To:${_email}\n${content_type}\nSubject:[Error: Local Webservice IS STILL NOT rsponding] - A system restart is triggered.\n$err_msg\n${msg_user_defined}\n${msg}" \
| sendmail -F "Error `hostname -f`" -f $sender_address $_email
done
rm -f "$RESTART_CHECK_FILE"
reboot_system "The local web service is still down - a system restart is triggered."

View File

@ -17,6 +17,13 @@
# -
LOCAL_WEBSITES_TO_CHECK=""
# - LOG_FILES_TO_MONITOR
# -
# - Print out the last 20 lines from theses logfiles
# -
# -
LOG_FILES_TO_MONITOR=""
# - TIME_OUT
# -
# - Timeout for curl request of each website