Feb 142023
Để kiểm tra tình trạng ổ đĩa, CPU và RAM trên máy chủ Linux và cảnh báo khi vượt quá giới hạn cấu hình thông qua Telegram, bạn có thể sử dụng script bash dưới đây:
#!/bin/bash
# Set the threshold for disk, CPU, and RAM usage
DISK_THRESHOLD=80 # in %
CPU_THRESHOLD=80 # in %
RAM_THRESHOLD=80 # in %
# Set the Telegram bot token and chat ID
TELEGRAM_BOT_TOKEN="your_bot_token"
TELEGRAM_CHAT_ID="your_chat_id"
# Check disk usage and send a warning if it exceeds the threshold
disk_usage=$(df -h / | awk '/\// {print $(NF-1)}' | sed 's/%//')
if [ "$disk_usage" -ge "$DISK_THRESHOLD" ]; then
message="WARNING: Disk usage is at ${disk_usage}%"
curl -s -X POST "https://api.telegram.org/bot${TELEGRAM_BOT_TOKEN}/sendMessage" -d "chat_id=${TELEGRAM_CHAT_ID}" -d "text=$message"
fi
# Check CPU usage and send a warning if it exceeds the threshold
cpu_usage=$(top -b -n 1 | awk '/^%Cpu/ {print $2}' | cut -d '.' -f 1)
if [ "$cpu_usage" -ge "$CPU_THRESHOLD" ]; then
message="WARNING: CPU usage is at ${cpu_usage}%"
curl -s -X POST "https://api.telegram.org/bot${TELEGRAM_BOT_TOKEN}/sendMessage" -d "chat_id=${TELEGRAM_CHAT_ID}" -d "text=$message"
fi
# Check RAM usage and send a warning if it exceeds the threshold
ram_usage=$(free | awk '/^Mem/ {print $3/$2 * 100.0}' | cut -d '.' -f 1)
if [ "$ram_usage" -ge "$RAM_THRESHOLD" ]; then
message="WARNING: RAM usage is at ${ram_usage}%"
curl -s -X POST "https://api.telegram.org/bot${TELEGRAM_BOT_TOKEN}/sendMessage" -d "chat_id=${TELEGRAM_CHAT_ID}" -d "text=$message"
fi
Giải thích các bước trong script:
- Thiết lập ngưỡng cho việc sử dụng đĩa, CPU và RAM.
- Thiết lập mã thông báo bot Telegram và ID trò chuyện.
- Kiểm tra việc sử dụng đĩa và gửi cảnh báo nếu nó vượt quá ngưỡng.
- Kiểm tra việc sử dụng CPU và gửi cảnh báo nếu nó vượt quá ngưỡng.
- Kiểm tra việc sử dụng RAM và gửi cảnh báo nếu nó vượt quá ngưỡng.