diff --git a/shell/otask.sh b/shell/otask.sh index 3d4937ec..72e3446b 100644 --- a/shell/otask.sh +++ b/shell/otask.sh @@ -81,18 +81,19 @@ run_nohup() { } check_server() { - local top_result=$(top -b -n 1) - cpu_use=$(echo "$top_result" | grep CPU | grep -v -E 'grep|PID' | awk '{print $2}' | cut -f 1 -d "%" | head -n 1) + if [[ $cpu_warn ]] && [[ $mem_warn ]] && [[ $disk_warn ]]; then + local top_result=$(top -b -n 1) + cpu_use=$(echo "$top_result" | grep CPU | grep -v -E 'grep|PID' | awk '{print $2}' | cut -f 1 -d "%" | head -n 1) - mem_free=$(free -m | grep "Mem" | awk '{print $3}' | head -n 1) - mem_total=$(free -m | grep "Mem" | awk '{print $2}' | head -n 1) - mem_use=$(printf "%d%%" $((mem_free * 100 / mem_total)) | cut -f 1 -d "%" | head -n 1) + mem_free=$(free -m | grep "Mem" | awk '{print $3}' | head -n 1) + mem_total=$(free -m | grep "Mem" | awk '{print $2}' | head -n 1) + mem_use=$(printf "%d%%" $((mem_free * 100 / mem_total)) | cut -f 1 -d "%" | head -n 1) - disk_use=$(df -P | grep /dev | grep -v -E '(tmp|boot|shm)' | awk '{print $5}' | cut -f 1 -d "%" | head -n 1) - - if [[ $cpu_use -gt $cpu_warn ]] || [[ $mem_free -lt $mem_warn ]] || [[ $disk_use -gt $disk_warn ]]; then - local resource=$(echo "$top_result" | grep -v -E 'grep|Mem|idle|Load|tr' | awk '{$2="";$3="";$4="";$5="";$7="";print $0}' | head -n 10 | tr '\n' '|' | sed s/\|/\\\\n/g) - notify_api "服务器资源异常警告" "当前CPU占用 $cpu_use% 内存占用 $mem_use% 磁盘占用 $disk_use% \n资源占用详情 \n\n $resource" + disk_use=$(df -P | grep /dev | grep -v -E '(tmp|boot|shm)' | awk '{print $5}' | cut -f 1 -d "%" | head -n 1) + if [[ $cpu_use -gt $cpu_warn ]] && [[ $cpu_warn ]] || [[ $mem_free -lt $mem_warn ]] || [[ $disk_use -gt $disk_warn ]]; then + local resource=$(echo "$top_result" | grep -v -E 'grep|Mem|idle|Load|tr' | awk '{$2="";$3="";$4="";$5="";$7="";print $0}' | head -n 10 | tr '\n' '|' | sed s/\|/\\\\n/g) + notify_api "服务器资源异常警告" "当前CPU占用 $cpu_use% 内存占用 $mem_use% 磁盘占用 $disk_use% \n资源占用详情 \n\n $resource" + fi fi } diff --git a/shell/share.sh b/shell/share.sh index fb2d8b8c..4a5ffdfd 100755 --- a/shell/share.sh +++ b/shell/share.sh @@ -79,9 +79,9 @@ import_config() { default_cron="$(random_range 0 59) $(random_range 0 23) * * *" fi - cpu_warn=${CpuWarn:-80} - mem_warn=${MemoryWarn:-80} - disk_warn=${DiskWarn:-90} + cpu_warn=${CpuWarn} + mem_warn=${MemoryWarn} + disk_warn=${DiskWarn} } set_proxy() {