日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

老李分享:shell 监控cpu,memory,load average 1

發布時間:2025/6/15 编程问答 121 豆豆
生活随笔 收集整理的這篇文章主要介紹了 老李分享:shell 监控cpu,memory,load average 1 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

老李分享:shell 監控cpu,memory,load average

?

? ?poptest是國內唯一一家培養測試開發工程師的培訓機構,以學員能勝任自動化測試,性能測試,測試工具開發等工作為目標。如果對課程感興趣,請大家咨詢qq:908821478,咨詢電話010-84505200。 ?Poptest在培訓性能的時候,會教學員如何用其他輔助的技術手段來完成性能監控,快速的定位性能瓶頸。下面就是利用shell完成監控目標:

shell 監控cpu,memory,load average,記錄到log,當負載壓力時,發電郵通知管理員。

?

原理:

?

1.獲取cpu,memory,load average的數值

?

2.判斷數值是否超過自定義的范圍,例如(CPU>90%,Memory<10%,load average>2)

?

3.如數值超過范圍,發送電郵通知管理員。發送有時間間隔,每小時只會發送一次。

?

4.將數值寫入log。

?

5.設置crontab 每30秒運行一次。

?

?

?

ServerMonitor.sh

#!/bin/bash

?

# 系統監控,記錄cpu、memory、load average,當超過規定數值時發電郵通知管理員

?

# *** config start ***

?

# 當前目錄路徑

ROOT=$(cd "$(dirname "$0")"; pwd)

?

# 當前服務器名

HOST=$(hostname)

?

# log 文件路徑

CPU_LOG="${ROOT}/logs/cpu.log"

MEM_LOG="${ROOT}/logs/mem.log"

LOAD_LOG="${ROOT}/logs/load.log"

?

# 通知電郵列表

NOTICE_EMAIL='admin@admin.com'

?

# cpu,memory,load average 記錄上一次發送通知電郵時間

CPU_REMARK='/tmp/servermonitor_cpu.remark'

MEM_REMARK='/tmp/servermonitor_mem.remark'

LOAD_REMARK='/tmp/servermonitor_loadaverage.remark'

?

# 發通知電郵間隔時間

REMARK_EXPIRE=3600

NOW=$(date +%s)

?

# *** config end ***

?

?

# *** function start ***

?

# 獲取CPU占用

function GetCpu() {

??? cpufree=$(vmstat 1 5 |sed -n '3,$p' |awk '{x = x + $15} END {print x/5}' |awk -F. '{print $1}')

??? cpuused=$((100 - $cpufree))

??? echo $cpuused

?

??? local remark

??? remark=$(GetRemark ${CPU_REMARK})

?

??? # 檢查CPU占用是否超過90%

??? if [ "$remark" = "" ] && [ "$cpuused" -gt 90 ]; then

??????? echo "Subject: ${HOST} CPU uses more than 90% $(date +%Y-%m-%d' '%H:%M:%S)" | sendmail ${NOTICE_EMAIL}

??????? echo "$(date +%s)" > "$CPU_REMARK"

??? fi

}

?


轉載于:https://blog.51cto.com/10988776/1723280

總結

以上是生活随笔為你收集整理的老李分享:shell 监控cpu,memory,load average 1的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。