내 시스템의 CPU 사용량이 특정 임계값에 도달하는 경우 경고/경고를 어떻게 설정합니까?

내 시스템의 CPU 사용량이 특정 임계값에 도달하는 경우 경고/경고를 어떻게 설정합니까?

시스템 CPU 사용량과 메모리 사용량을 모니터링하기 위해 쉘 스크립트를 작성했습니다. 내 시스템이 특정 임계값(예: 90%)에 도달했다는 알림을 이메일로 보내는 방법을 알아야 합니다.

내 코드:

#! /bin/bash
printf "Date\t\t\tMemory\t\tDisk\t\tCPU\n"
end=$((SECONDS+30))
while [ $SECONDS -lt $end ]; do
CURRENTDATE=`date +"%Y-%m-%d %T"`
MEMORY=$(free -m | awk 'NR==2{printf " \t%.2f%%\t\t", $3*100/$2 }')
DISK=$(df -h | awk '$NF=="/"{printf "%s\t\t", $5}')
CPU=$(top -bn1 | grep load | awk '{printf "%.2f%%\t\t\n", $(NF-2)}')
echo  ${CURRENTDATE} "$MEMORY$DISK$CPU"

done

답변1

아마도 모니터링 솔루션(Nagios, Zabbix FTW!)을 사용해야 할 것입니다. 그러나 정말로 사용자 정의 스크립트를 사용하고 싶다면 mail프로그램을 사용할 수 있습니다.

echo "Current CPU USAGE $CPU" | mail -s "This is subject like: CPU WARNING" [email protected]

을 사용할 수도 있습니다 ssmpt. 테스트하지는 않았지만 이에 대한 간단한 기사가 있습니다.https://www.howtogeek.com/51819/how-to-setup-email-alerts-on-linux-using-gmail/.

관련 정보