#!/bin/bash

SERWERY=("web01" "db01" "mail01" "backup01")
RAPORT="/tmp/raport_serwery.txt"

echo "=== Raport z $(date "+%Y-%m-%d %H:%M:%S") ===" > "$RAPORT"
echo "" >> "$RAPORT"

online=0
offline=0

for serwer in "${SERWERY[@]}"; do
    if ping -c 1 -W 2 "$serwer" > /dev/null 2>&1; then
        czas=$(ping -c 1 "$serwer" 2>/dev/null | grep "time=" | awk -F'time=' '{print $2}' | awk '{print $1}')
        if [[ -z "$czas" ]]; then
            czas="<1"
        fi
        echo "Serwer $serwer: OK (czas: ${czas}ms)" >> "$RAPORT"
        ((online++))
    else
        echo "Serwer $serwer: NIE ODPOWIADA" >> "$RAPORT"
        ((offline++))
    fi
done

echo "" >> "$RAPORT"
echo "=== PODSUMOWANIE ===" >> "$RAPORT"
echo "Serwery online: $online" >> "$RAPORT"
echo "Serwery offline: $offline" >> "$RAPORT"
echo "=========================" >> "$RAPORT"

echo "Raport zapisany do: $RAPORT"
echo ""
echo "=== PODSUMOWANIE ==="
echo "Serwery online: $online"
echo "Serwery offline: $offline"

if [[ $offline -gt 0 ]]; then
    exit 1
fi
exit 0