1. 程式人生 > >企業實戰腳本案例1:動態監測網站

企業實戰腳本案例1:動態監測網站

shell腳本實現系統內存、硬盤、cpu、web等監控功能

動態監測網站


目錄:

1.腳本功能介紹

2.腳本制作

3.腳本案例


一、腳本功能介紹

當你所在企業中因業務需求,通過公有雲(如阿裏雲、騰訊雲等)購買為數不多的雲主機部署業務,沒有空余資源部署zaibix等監控平臺,此時可以通過腳本實現對雲主機的內存使用情況、CPU使用情況、硬盤使用情況、進程的守護、web網站的動態監測等一系列的指標進行監控,如有異常可通過郵件報警,或通過企業某監控屏幕實時進行顯示。

二、腳本制作

腳本制作思路:

(1).需求分析,將需求列在文檔之中;

(2).針對需求,進行技術分析,會用到哪些技術的相關知識點,列在文檔之中;

(3).根據需求和技術要求,設計腳本架構,爭取做到腳本的精簡,計算效率的高效,腳本的易讀良 好,能用一句話實現不用兩句話實現。

(4).腳本制作和寫標書有點相類似,在第一次完成標書時,僅僅是標書的開始,寫腳本也一樣,寫作完初始腳本後,僅僅是開始。

腳本的架構調整:最好多定義函數,通過函數實現,便於日後腳本功能的擴展;

腳本的功能調試:根據設計的功能進行語法和數據的測試;

腳本的規範調試:便於與企業規定的語法結構相統一,進行語法和註釋規範統一;

腳本易讀性調試:完成一個腳本後,找相關同事閱讀,做到精簡、規範和易讀。

三、腳本案例

通過編寫腳本實現對網站的動態監測,如有其它需求如只需在腳本中添加函數即可完成對腳本功能的擴展,如有郵件報警需求,則添加添加郵件賬戶,如對業務監控要求較弱時,也可添加定時任務,每8小時進行郵件通知一次雲主機資源使用情況,如有防止系統異常重啟,失去腳本監控功能,也放在啟動服務腳本中,實現後臺執行。

#!/bin/bash

. /etc/init.d/functions
declare -a mcurl
declare url_name
declare -i i

declare -i j=1

#++++++++++++++定義數組,數組元素為網站名++++++

mcurl=(
http://www.baidu.com
http://www.goole.com
http://11841715.blog.51cto.com
http://xuewbweb.com
)
#+++++++++++定義啟動節奏+++++++++++++++++++++++

wait () {
echo -n "5表後,開始檢測網站的URL操作."
for ((i=0; i<5; i++));do #5秒後開始檢測網站
echo -n "."
sleep 1
done
echo
}
#++++++++++++定義循環監測網站++++++++++++++++++
check_url (){
for url_name in ${mcurl[*]};do
wget --timeout=3 --tries=1 $url_name -q -O /dev/null
[ $? -eq 0 ] && action $url_name /bin/true || action $url_name /bin/false
done

sleep 10

}
#++++++++++++定義主函數++++++++++++++++++++++++++
main (){
while true;do
wait

echo "Checkurl_Count $j"
check_url
let j++
done
}

#++++++++++++++++執行主函數++++++++++++++++++++++++

main


本文出自 “11831715” 博客,請務必保留此出處http://11841715.blog.51cto.com/11831715/1962413

企業實戰腳本案例1:動態監測網站