Hôm nay mình xin chia sẻ 1 scripts rất tiện ích cho các bạn đang sử dụng VPS/Server. Đối với những bạn mới tập tành tìm hiểu về VPS/Server thì việc kiểm tra nó thường xuyên rất là mệt.
Chức năng mã nguồn là sẽ thông báo email cho bạn về thông tin VPS/Server đang bị quá tải.
Thông báo chi tiết:
- Top 20 process sử dụng cao nhất
- Top 10 process sử dụng cao nhất
- Trạng thái Memory và Swap hiện tại
- Các network đang hoạt động
- Chi tiết HDD
- Top 20 process sử dụng cao nhất
- Top 10 process sử dụng cao nhất
- Trạng thái Memory và Swap hiện tại
- Các network đang hoạt động
- Chi tiết HDD
#!/bin/bashEMAIL="admin@server.com" // Email cua banSUBJECT="Alert $(hostname) load average is $L05"TEMPFILE="/tmp/$(hostname)"TOPLOAD="10" // Neu VPS/Server load avarage qua 10 se thong bao cho banecho "Load average Crossed allowed limit." >> $TEMPFILEecho "Hostname: $(hostname)" >> $TEMPFILEecho "Local Date & Time : $(date)" >> $TEMPFILEecho "| Uptime status: |" >> $TEMPFILEecho "-------------------------------------------" >> $TEMPFILE/usr/bin/uptime >> $TEMPFILEecho "-------------------------------------------" >> $TEMPFILEecho "| Top 20 CPU consuming processes: |" >> $TEMPFILE
ps aux | head -1 >> $TEMPFILE
ps aux --no-headers | sort -rn +2 | head -20 >> $TEMPFILEecho "| Top 10 memory-consuming processes: |" >> $TEMPFILE
ps aux --no-headers| sort -rn +3 | head >> $TEMPFILEecho "-------------------------------------------" >> $TEMPFILEecho "| Memory and Swap status: |" >> $TEMPFILE/usr/bin/free -m >> $TEMPFILEecho "-------------------------------------------" >> $TEMPFILEecho "| Active network connection: |" >> $TEMPFILEecho "-------------------------------------------" >> $TEMPFILE/bin/netstat -tnup | grep ESTA >> $TEMPFILEecho "-------------------------------------------" >> $TEMPFILEecho "| Disk Space information: |" >> $TEMPFILEecho "-------------------------------------------" >> $TEMPFILE/bin/df -h >> $TEMPFILEecho "-----------------THE END-------------------" >> $TEMPFILE
L05="$(uptime|awk '{print $(NF-2)}'|cut -d. -f1)"if test $L05 -gt $TOPLOAD
then
mail -s "$SUBJECT $L05" "$EMAIL" < $TEMPFILE
fi
rm -f $TEMPFILE
Bạn chạy lệnh dưới để thêm cron vào crontab
PHP Code:
crontab -e
PHP Code:
* * * * * /root/loadalert.sh >/dev/null 2>&1
P/s: Mình chỉ sửa lại đôi chút cho mọi người dễ hiểu hơn. Nếu có lỗi, sai sót mong mọi người bỏ qua.
Nguồn bài viết: http://www.learncpanel.com/cpanel-tu...server-or-vps/
0 nhận xét:
Đăng nhận xét