Explorecraft_Logolcicusz_Kn.../Monitoring/healthcheck.sh

18 lines
No EOL
857 B
Bash

#!/bin/bash
# Configuration
HEALTH_URL="http://10.1.30.1:8080/health"
CONFIGURABLE_MESSAGE="Something went wrong with the health check."
LOG_FILE="health_check.log"
# Perform curl request
HEALTH_RESPONSE=$(curl -s -w "%{http_code}" "$HEALTH_URL")
HTTP_CODE=$(echo "$HEALTH_RESPONSE" | tail -n1)
CONTENT=$(echo "$HEALTH_RESPONSE" | head -n -1)
if [ "$HTTP_CODE" == "200" ] && [ "$CONTENT" == "OK" ]; then
echo "[$(date +"%Y-%m-%d %H:%M:%S")] - Successful response from health check at '$HEALTH_URL' - Response: 'OK'" >> "$LOG_FILE"
else
echo "[$(date +"%Y-%m-%d %H:%M:%S")] - Failed response from health check at '$HEALTH_URL' - HTTP Code: '$HTTP_CODE' - Content: '$CONTENT'" >> "$LOG_FILE"
echo "[$(date +"%Y-%m-%d %H:%M:%S")] - Sending a push notification..." >> "$LOG_FILE"
send_notification "$CONFIGURABLE_MESSAGE" "urgent" "warning"
fi