在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

監(jiān)控系統(tǒng)負(fù)載記錄系統(tǒng)狀態(tài)

阿銘linux ? 來源:阿銘linux ? 作者:阿銘linux ? 2022-11-11 09:25 ? 次閱讀

【需求】

寫一個(gè)監(jiān)控腳本,監(jiān)控系統(tǒng)負(fù)載,如果系統(tǒng)負(fù)載超過10,需要記錄系統(tǒng)狀態(tài)信息

提示:

1)系統(tǒng)負(fù)載命令使用uptime看,過去1分鐘的平均負(fù)載

2)系統(tǒng)狀態(tài)使用如下工具標(biāo)記:top、 vmstat、 ss

3)要求每隔20s監(jiān)控一次

4)系統(tǒng)狀態(tài)信息需要保存到/opt/logs/下面,保留一個(gè)月,文件名建議帶有`date +%s`后綴或者前綴

【解析】

這是一個(gè)監(jiān)控腳本,對于監(jiān)控腳本,通常有兩種思路

一個(gè)是做一個(gè)死循環(huán),讓它一直跑著,每檢測一次,中間間隔一段時(shí)間,比如本題要求的20s

另外一種是一分鐘執(zhí)行一次,利用系統(tǒng)的任務(wù)計(jì)劃,每分鐘執(zhí)行

本案例要求每20s監(jiān)控一次,所以只能使用第一種,死循環(huán)

死循環(huán),使用while :; do ...; done

這里的 : 你可以理解成條件為真

再來看腳本要求,監(jiān)控系統(tǒng)負(fù)載,超過10就記錄系統(tǒng)狀態(tài)信息

問題的關(guān)鍵點(diǎn)在于,如何獲取到系統(tǒng)負(fù)載的值

系統(tǒng)負(fù)載,在Linux里面可以使用w或者uptime或者top命令都可以獲取到

2c21e71e-6152-11ed-8abf-dac502259ad0.png

2c309a0c-6152-11ed-8abf-dac502259ad0.png

2c3e516a-6152-11ed-8abf-dac502259ad0.png

這里的load average 后面的三個(gè)數(shù)字就是系統(tǒng)負(fù)載,它們分別表示過去1分鐘、5分鐘、15分鐘內(nèi)系統(tǒng)的平均負(fù)載

為了更加精準(zhǔn),我們需要選擇1分鐘的平均負(fù)載

那這個(gè)負(fù)載到底代表著什么含義呢?

就拿這個(gè)1分鐘負(fù)載來說,這個(gè)數(shù)字表示,過去1分鐘,平均有多少個(gè)進(jìn)程在使用CPU資源

使用CPU資源的進(jìn)程越多,那就意味著CPU越忙

那,這個(gè)數(shù)字為多少是合適呢?

這取決于你的系統(tǒng)里有多少顆CPU,這個(gè)數(shù)字不是物理CPU,指的是邏輯CPU個(gè)數(shù),那如何查看?

使用lscpu命令看

2c571272-6152-11ed-8abf-dac502259ad0.png

比如,你系統(tǒng)有8顆CPU,那么系統(tǒng)負(fù)載為8時(shí),表示1顆CPU處理一個(gè)進(jìn)程,這樣CPU沒有空閑也不忙,是最合適的

好了,說完系統(tǒng)負(fù)載,再回頭看腳本

如何拿到這個(gè)1分鐘的負(fù)載數(shù)值呢?

這就需要借助sed awk 以及 cut等各種處理字符串的工具了

uptime |awk -F 'average:' '{print $2}'

2c795580-6152-11ed-8abf-dac502259ad0.png

首先將三個(gè)數(shù)字打出來,然后想辦法截取第一個(gè)數(shù)字

此時(shí),可以使用cut來截取

2c8aeb1a-6152-11ed-8abf-dac502259ad0.png

這時(shí)候出現(xiàn)的結(jié)果還不是最終的數(shù)字,還需要將最前面的空格去掉,而且我們不需要小數(shù)點(diǎn)以及后面的數(shù)字

使用sed將空格去掉

2ca768da-6152-11ed-8abf-dac502259ad0.png

再使用cut將小數(shù)點(diǎn)前面的數(shù)字截取

2cbb3180-6152-11ed-8abf-dac502259ad0.png

其實(shí),寫腳本就需要大家一步一步地去嘗試

拿到負(fù)載值之后,再去和10做比較

可以先將負(fù)載值賦值到變量里,然后用變量去做比較

if [ $load -gt 10 ]; then ...; fi

如果負(fù)載值高于10,就需要記錄系統(tǒng)狀態(tài)信息

題目也提示我們了,獲取系統(tǒng)負(fù)載的狀態(tài),有top vmstat 和 ss 三個(gè)命令

如果大家不會(huì)使用這幾個(gè)命令,那么腳本就無法寫出來了

所以,寫shell腳本的前提是,你必須要具備一定的認(rèn)知

top -bn1 可以一次性展示top的結(jié)果,但是沒必要將所有都記錄下來,只需要前100行就足夠了,因?yàn)槲覀冴P(guān)注的是排在最前面的幾個(gè)進(jìn)程

vmstat 命令可以記錄包括cpu、內(nèi)存、io等信息,用法是 vmstat n1 n2 , 其中n1和n2是兩個(gè)數(shù)字,前面的數(shù)字,表示幾秒鐘打印一次信息,后面的數(shù)字是打印幾次,建議是1秒1次,打印10次

所以最終用法啊是

vmstat 1 10

ss是用來查看網(wǎng)絡(luò)鏈接狀態(tài)的命令,這里需要使用

ss -an

有了記錄系統(tǒng)狀態(tài)信息的命令后,接下來就是要規(guī)劃,將這些信息記錄到哪個(gè)日志里

兩種思路,一個(gè)是一股腦全部記錄到一個(gè)文件里,每次記錄都是追加

另外一個(gè)思路是,針對top、vmstat、ss分別記錄日志

這里我選擇第二個(gè),這樣方便查看,題目中要求給這個(gè)日志加一個(gè)date +%s的時(shí)間戳作為后綴前綴或者后綴,那么就用后綴吧,比如:

top.`date +%s`, vmstat.`date+%s`, ss.`date +%s`

刪除掉一個(gè)月以前的,使用find查看即可,還需要注意,/opt/logs/下面有可能有其它日志,所以我們只需要針對本腳本產(chǎn)生的日志進(jìn)行搜索

find可以這樣做

find  /opt/logs  -name "top*" -o -name "vmstat*" -o -name "ss*" 

說明一下,這里的-o表示或者的意思,如果不加-o,那么就是并且

find 還支持將一堆條件搞到一起,作為一個(gè)整體,需要使用(),例如

find  /opt/logs ( -name "top*" -o -name "vmstat*" -o -name "ss*" ) -mtime +30

需要注意,小括號(hào)使用脫義符號(hào)脫義了,并且前后有空格

【參考答案】

腳本最終結(jié)果是這樣的:

#!/bin/bash
[ -d /opt/logs ] || mkdir -p /opt/logs
while :
do
    load=`uptime |awk -F 'average:' '{print $2}'|cut -d',' -f1|sed 's/ //g' |cut -d. -f1`
    if [ $load -gt 10 ]
    then
        top -bn1 |head -n 100 > /opt/logs/top.`date +%s` 
        vmstat 1 10 > /opt/logs/vmstat.`date +%s`
        ss -an > /opt/logs/ss.`date +%s`
    fi
    sleep 20
    find  /opt/logs ( -name "top*" -o -name "vmstat*" -o -name "ss*" ) -mtime +30 |xargs rm  -f
done

腳本運(yùn)行時(shí),丟入后臺(tái)去

著重提醒一下,有的同學(xué)將最后面這個(gè)load賦值或者find命令放到了while循環(huán)外面,

這是不對的,放到while循環(huán)前面它只會(huì)執(zhí)行一次,而放到while循環(huán)后面永遠(yuǎn)也不會(huì)執(zhí)行

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11304

    瀏覽量

    209483
  • 監(jiān)控系統(tǒng)

    關(guān)注

    21

    文章

    3914

    瀏覽量

    174693
  • 腳本
    +關(guān)注

    關(guān)注

    1

    文章

    389

    瀏覽量

    14864

原文標(biāo)題:監(jiān)控系統(tǒng)負(fù)載記錄系統(tǒng)狀態(tài)

文章出處:【微信號(hào):aming_linux,微信公眾號(hào):阿銘linux】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    機(jī)房環(huán)境監(jiān)控系統(tǒng)

    看所監(jiān)測配電線路的參數(shù)。相應(yīng)的參數(shù)應(yīng)存有歷史曲線,可查看該參數(shù)的歷史曲線,可通過IE瀏覽器全面查看。2、空調(diào)監(jiān)控 實(shí)時(shí)監(jiān)視精密空調(diào)的工作狀態(tài)與參數(shù)。系統(tǒng)實(shí)時(shí)全面診斷空調(diào)運(yùn)行狀況,監(jiān)控
    發(fā)表于 09-29 16:31

    智能機(jī)房監(jiān)控系統(tǒng) 智能家居監(jiān)控系統(tǒng)

    可將各機(jī)房控制器集中連接到監(jiān)控電腦,傳送到互聯(lián)網(wǎng)/手機(jī)等遠(yuǎn)程終端。二, 系統(tǒng)結(jié)構(gòu)圖1,整體系統(tǒng)架構(gòu)2,單站點(diǎn)系統(tǒng)結(jié)構(gòu)三, 系統(tǒng)特點(diǎn)1,節(jié)能減
    發(fā)表于 12-11 17:47

    智能機(jī)房監(jiān)控系統(tǒng)

    各機(jī)房控制器集中連接到監(jiān)控電腦,傳送到互聯(lián)網(wǎng)/手機(jī)等遠(yuǎn)程終端。二, 系統(tǒng)結(jié)構(gòu)圖1,整體系統(tǒng)架構(gòu)2,單站點(diǎn)系統(tǒng)結(jié)構(gòu)三, 系統(tǒng)特點(diǎn)1,節(jié)能減排;
    發(fā)表于 01-03 11:13

    【Future】大型儀器設(shè)備運(yùn)行狀態(tài)監(jiān)控系統(tǒng)

    本帖最后由 wangjiamin2014 于 2015-1-8 18:00 編輯 項(xiàng)目名稱: 大型儀器設(shè)備運(yùn)行狀態(tài)監(jiān)控系統(tǒng)團(tuán)隊(duì)名稱:Future團(tuán)隊(duì)成員:張勉|付清林|田秀兵作品演示作品介紹
    發(fā)表于 12-31 14:02

    【W(wǎng)RTnode2R申請】車載記錄

    申請理由:車載記錄儀的功能是從車輛采集 OBD、胎壓、溫度、GPS等數(shù)據(jù)。然后通過3G網(wǎng)絡(luò)將這些數(shù)據(jù)傳輸?shù)皆贫私o手機(jī)客戶端或者PC客戶端使用。想申請WRTnode 2R的一個(gè)原因是我對OpenWrt
    發(fā)表于 10-13 14:05

    安燈狀態(tài)監(jiān)控系統(tǒng)

    )2、能夠?qū)崟r(shí)監(jiān)控異常狀態(tài)。3、預(yù)留兩個(gè)自動(dòng)清零時(shí)間點(diǎn)(客戶自行設(shè)置清零時(shí)間)4、記錄每個(gè)時(shí)間段異常處理時(shí)間。5、系統(tǒng)可設(shè)置兩個(gè)班次時(shí)間區(qū)間,在每個(gè)班次開始時(shí)沒有任何
    發(fā)表于 07-28 15:48

    【HarmonyOS HiSpark AI Camera】車載記錄

    項(xiàng)目名稱:車載記錄儀試用計(jì)劃:本人在AR領(lǐng)域有三年多的學(xué)習(xí)和開發(fā)經(jīng)驗(yàn),曾設(shè)計(jì)過類似谷歌眼鏡版的開源AR眼鏡,參與國內(nèi)開源智能眼鏡的開發(fā),對計(jì)算機(jī)圖像標(biāo)定技術(shù),圖像識(shí)別,基于標(biāo)識(shí)的跟蹤注冊技術(shù)有過
    發(fā)表于 11-20 18:36

    集中監(jiān)控系統(tǒng)的要求有哪些?

    及輸出等各部分的狀態(tài)。要求系統(tǒng)標(biāo)明UPS電流流向,可看到負(fù)載的供電狀況,是否受保護(hù)等;  ( 2 )系統(tǒng)要能對機(jī)房UPS各部件的參數(shù)狀態(tài)進(jìn)行
    發(fā)表于 12-01 16:00

    邏迅智慧冷鏈智能無線溫濕度傳感器高精度疫苗監(jiān)控載記錄

    ,應(yīng)配備溫濕度監(jiān)控系統(tǒng),對冷藏疫苗運(yùn)輸過程中冷藏車和恒溫箱內(nèi)的溫度進(jìn)行自動(dòng)監(jiān)控記錄,可有效防范儲(chǔ)存和運(yùn)輸過程中可能影響疫苗質(zhì)量和安全的各種風(fēng)險(xiǎn),保證疫苗儲(chǔ)存和運(yùn)輸過程中的質(zhì)量。因此,
    發(fā)表于 02-24 14:30

    機(jī)房監(jiān)控系統(tǒng)標(biāo)準(zhǔn)和常見故障記錄

    集中監(jiān)控系統(tǒng)系統(tǒng)建設(shè)要求對機(jī)房整體動(dòng)力環(huán)境設(shè)備工作有狀態(tài)演示,故障迅速定位、故障及時(shí)通知、保存報(bào)警信息及系統(tǒng)運(yùn)行數(shù)據(jù)、繪制分析圖表、設(shè)備巡
    發(fā)表于 09-08 07:43

    消控監(jiān)控系統(tǒng) 服務(wù)器,動(dòng)環(huán)監(jiān)控系統(tǒng)【斯必得智慧機(jī)房】精選資料分享

    的獨(dú)立的運(yùn)行系統(tǒng)那么按照傳統(tǒng)的人工巡查的方式將要浪費(fèi)大量的人力和物力。動(dòng)環(huán)監(jiān)控系統(tǒng)有效監(jiān)視系統(tǒng)和設(shè)備的運(yùn)行狀態(tài),監(jiān)視基站/機(jī)房環(huán)境
    發(fā)表于 09-10 09:13

    基于動(dòng)態(tài)負(fù)載均衡的網(wǎng)絡(luò)監(jiān)控系統(tǒng)

    設(shè)計(jì)企業(yè)局域網(wǎng)絡(luò)監(jiān)控系統(tǒng)NetMonitor,該系統(tǒng)基于J2EE技術(shù)實(shí)現(xiàn)對網(wǎng)絡(luò)服務(wù)的支持。引入動(dòng)態(tài)負(fù)載均衡機(jī)制作為集群服務(wù)器網(wǎng)絡(luò)監(jiān)控
    發(fā)表于 04-07 08:52 ?31次下載

    負(fù)載平衡監(jiān)控系統(tǒng)設(shè)計(jì)源碼分享

    負(fù)載平衡監(jiān)控系統(tǒng)設(shè)計(jì)源碼分享
    發(fā)表于 06-06 11:33 ?3次下載

    基于ARM的電子負(fù)載網(wǎng)絡(luò)監(jiān)控系統(tǒng)

    電子發(fā)燒友網(wǎng)站提供《基于ARM的電子負(fù)載網(wǎng)絡(luò)監(jiān)控系統(tǒng).pdf》資料免費(fèi)下載
    發(fā)表于 10-12 11:21 ?1次下載
    基于ARM的電子<b class='flag-5'>負(fù)載</b>網(wǎng)絡(luò)<b class='flag-5'>監(jiān)控</b><b class='flag-5'>系統(tǒng)</b>

    Jtti:有哪些工具可以幫助我監(jiān)控自動(dòng)更新過程中的系統(tǒng)狀態(tài)

    的問題。 journalctl:查看 systemd 系統(tǒng)和服務(wù)日志,了解服務(wù)狀態(tài)系統(tǒng)事件。 2.性能監(jiān)控工具 top和htop:實(shí)時(shí)監(jiān)控
    的頭像 發(fā)表于 12-10 15:46 ?100次閱讀
    主站蜘蛛池模板: 免费看片aⅴ免费大片| 六月婷婷视频| 国产美女在线观看| 免费观看欧美成人1314色| 国产精品青草久久| 久久午夜精品视频| 操白虎美女| 久久婷婷一区二区三区| 国产片一级aaa毛片视频| 久久国产乱子伦精品免费午夜| 卡一卡二卡三国色天香永不失联| 日韩精品午夜| 天天夜夜操| 国产精品久久久久久免费播放| 你懂的欧美| 久久免费公开视频| 亚洲色图综合网站| 国产乱辈通伦影片在线播放亚洲| 国产天美| 婷婷六月综合| 亚洲综合五月天婷| 亚欧一区| 久久久久久国产精品免费| 国产午夜视频高清| 网女色| 亚洲精品蜜桃久久久久久| 啪啪调教所29下拉式免费阅读| 美女色18片黄黄色| 国产色片| 色婷婷基地| 国产视频三区| 欧美黄区| 女人张开腿等男人桶免费视频| 两性色午夜视频免费老司机| 性色综合| 天天欧美| 亚洲色图日韩精品| 我不卡午夜| 亚洲色啦啦狠狠网站| 亚洲dv| 亚洲淫视频|