shell監控系統資源並通過簡訊報警的指令碼

2022-09-26 13:51:17 字數 2411 閱讀 2242

目標分析:

所需的監控資源:

1、登陸使用者數

2、cpu負載

3、服務探測

4、硬碟空間(根分割槽、應用分割槽、備份分割槽)

5、記憶體資源

簡訊介面、郵件介面

格式上傳至附件

指令碼:#!/bin/bash

#監控使用者登入

usermonitor () '`

if [ $loginuser -ge 2 ]

then

critical="當前系統登入使用者人數超過1人,具體人數為:$loginuser 個,請確認操作者人數。"

status=0

else

echo "loginuser ok"

status=1

fi013.

}#監控記憶體

memmonitor () ' | awk ''`

memfree=`free -m | grep cache | awk nr==2 | awk ''`

memfreeb=`awk 'begin'`

memfrees=`awk 'begin'`

if [ $memfrees -lt 10 ]

then

critical="系統可用記憶體小於10%,實際可用記憶體為:$memfreeb ,請處理。"

status=0

elif [ oatgqmbn$memfrees -lt 20 ]

then

warning="系統可用記憶體小於20%,實際可用記憶體為:$memfreeb ,請檢視。"

warningt="記憶體報警"

status=1

else

echo "mem ok"

status=2fi}

#監控分割槽空間大小

diskmonitorg () '`

diskgs=`df -h | awk nr==2 | awk '' | awk -f% ''`

if [ $diskgs -gt 90 ]

then

critical="根分割槽使用率超過90%,實際已使用 $diskgb ,請處理。"

status=0

elif [ $diskgs -gt 80 -a $diskgs -lt 90 ]

then

warning="根分割槽使用率超過80%,實際已使用 $diskgb , 請檢視。"

warningt="根分割槽報警"

status=1

else

echo "diskgb ok"

status=2fi}

diskmonitora () '`

applys=`df -h | awk nr==4 | awk '' | awk -f% ''`

if [ $applys -gt 90 ]

then

critical="應用分割槽使用率超過90%,實際已使用 $applyb ,請處理."

status=0

elif [ $applys -gt 80 -a $applys -lt 90 ]

then

warning="應用分割槽使用率超過80%,實際已使用 $applyb ,請檢視。"

warningt="應用分割槽報警"

status=1

else

echo "apply ok"程式設計客棧

status=2fi}

#監控cpu負載

cpuload () ' | awk -f. ''`

cpuload2=

if [ $cpuload1 -gt 5 ]

then

critical="cpu負載過高,請即使處理。 $cpuload2 "

status=0

elif [ $cpuload1 -gt 3 -a $cpuload1 -lt 5 ]

then

warning="cpu負載警告, $warning "

warningt="負載報警"

status=1

else

echo "cpu ok"

status=2fi}

#監控服務狀態

servermonitor ()

#傳送報警簡訊、報警郵件

for n in usermonitor memmonitor diskmonitorg diskmonitora cpuload servermonitor

do$n

if [ $status -eq 0 ]

then

curl ""

elif [ $status -eq 1 ]

then

curl ""

else

echo "ok"

fidone

總結本文標題: shell監控系統資源並通過簡訊報警的指令碼

本文位址:

系統資源監控

系統資源監控 free 觀察記憶體使用情況 uname 查閱系統與核心相關資訊 s 系統核心名稱 r 核心版本 uptime 觀察系統啟動時間與負載 netstat 網路監察 vmstat 偵測系統資源變化 iftop 網路流量的監控 netsata 網路監控 netsata 選項 a 將目前系統上...

linux系統資源監控

如何檢視linux支援哪些命令 連按兩次tab鍵 top 作為乙個廣為人知的linux工具,top是大多數的類 unix 作業系統任務管理器。它可以顯示當前正在執行的程序的列表,使用者可以按照不同的條件對該列表進行排序。它主要顯示了系統程序對cpu和記憶體的使用狀況。top可以快速檢查是哪個或哪幾個...

Windows系統資源監控

3 使用基於pdh的python客戶端 我們都知道,windows自帶有系統資源監視器。主要有3個地方 1 windows的任務管理器的效能頁籤,包括了cpu,記憶體,磁碟,網路等系統資源的監控。它主要監控系統資源的總體使用情況,使用它,我們可以發現是否有資源達到瓶頸了等等。2 windows資源監...