Files
gestion/server-monitor.sh
T

21 lines
739 B
Bash
Executable File

#!/bin/bash
SERVER_ID="$1"
API_URL="$2"
TOKEN="$3"
if [ -z "$SERVER_ID" ] || [ -z "$API_URL" ] || [ -z "$TOKEN" ]; then
echo "Usage: $0 SERVER_ID API_URL SECRET_TOKEN"
exit 1
fi
CPU_USAGE=$(top -bn1 | grep "Cpu(s)" | awk '{print $2 + $4}' | head -1)
TOTAL_RAM=$(free -m | awk '/Mem:/ {print $2}')
USED_RAM=$(free -m | awk '/Mem:/ {print $3}')
RAM_USAGE=$(awk "BEGIN {printf \"%.2f\", ($USED_RAM / $TOTAL_RAM) * 100}")
DISK_USAGE=$(df -h / | awk 'NR==2 {print $5}' | sed 's/%//')
UPTIME=$(awk '{print $1}' /proc/uptime | cut -d. -f1)
curl -s -X POST "$API_URL?token=$TOKEN" \
-H "Content-Type: application/json" \
--data-raw "{\"cpuUsage\": $CPU_USAGE, \"ramUsage\": $RAM_USAGE, \"diskUsage\": $DISK_USAGE, \"uptime\": $UPTIME}"