Linux shell腳本實(shí)現(xiàn)CPU預(yù)警
如果CPU占用率持續(xù)達(dá)到80以上則調(diào)用打印java線程占用率堆棧的腳本,見(jiàn)https://github.com/oldratlee/useful-shells/blob/master/show-busy-java-threads.sh,具體用法見(jiàn)他的github wiki!
#!/bin/bash
#cpu idle percent
cpu_idle=`top -b -d 1 -n 2 | grep Cpu | awk 'NR>1{print $5}' | cut -f 1 -d "."`
if [ -d "/opt/scripts/log" ]
then
cd /opt/scripts
else
mkdir /opt/scripts/log
fi
count=0
condition=true
while condition
do
if [ $cpu_idle -le 20 ]
then
pids=`top -b -d 1 -n 1 | grep java | awk '{if($9 > 80) print $1}'`
for ((a = 1; a < 10; a++))
do
for pid in $pids
doi
#involve jdk existence check later
date=`date +%Y%m%d%H%M`
sh showstack.sh -c 30 -p $pid > log/stack_$pid_$date.log
jstat -gcutil $pid > log/gc_$pid_$date.log
done
done
for pid in $pids
do
date=`date +%Y%m%d%H%M`
jmap -heap $pid > log/heap_$pid_$date.log
done
count++
cpu_idle=`top -b -d 1 -n 2 | grep Cpu | awk 'NR>1{print $5}' | cut -f 1 -d "."`
if [ $count -ge 3]
then
#send emaili
#server ip address
ip=`ifconfig eth0 | grep "inet addr" | cut -f 2 -d ":" | cut -f 1 -d " "`
condition=false
count=0
fi
else
condition=false
count=0
fi
done
以上所述就是本文給大家分享的全部?jī)?nèi)容了,希望大家能夠喜歡。
- linux查看cpu是否支持64位的方法
- linux php-cgi.exe占用cpu 100%的一次排障之旅
- Linux中使用Shell腳本查看Java線程的CPU使用情況
- linux vps服務(wù)器進(jìn)程kswapd0與events/0消耗大量CPU的問(wèn)題
- linux使用管道命令執(zhí)行ps獲取cpu與內(nèi)存占用率
- linux系統(tǒng)使用python獲取cpu信息腳本分享
- 使用python獲取CPU和內(nèi)存信息的思路與實(shí)現(xiàn)(linux系統(tǒng))
- Linux2.6對(duì)新型CPU的支持
- Linux 查看cpu 信息的命令及簡(jiǎn)單實(shí)例
相關(guān)文章
普通用戶啟動(dòng)supervisor報(bào)HTTP錯(cuò)誤(strace)解決分析
這篇文章主要為大家介紹了普通用戶啟動(dòng)supervisor報(bào)HTTP錯(cuò)誤strace的問(wèn)題解決分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07
Shell命令之?dāng)?shù)組表示語(yǔ)法學(xué)習(xí)
這篇文章主要為大家介紹了Shell命令之?dāng)?shù)組表示語(yǔ)法學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-05-05
在Shell腳本中調(diào)用另一個(gè)腳本的三種方式講解
今天小編就為大家分享一篇關(guān)于在Shell腳本中調(diào)用另一個(gè)腳本的三種方式講解,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-04-04
shell備份文件、重命名文件、刪除指定文件的3個(gè)腳本分享
這篇文章主要介紹了shell備份文件、重命名文件、刪除指定文件的3個(gè)腳本分享,是學(xué)習(xí)shell時(shí)的練習(xí)腳本,shell新手朋友可以參考下哦2014-07-07
shell腳本殺死指定端口進(jìn)程的實(shí)現(xiàn)示例
隨著越來(lái)越廣泛的Linux系統(tǒng)使用,如何輕松殺死指定程序端口成為了很多系統(tǒng)管理員最迫切關(guān)心的問(wèn)題,本文就詳細(xì)的介紹一下如何實(shí)現(xiàn),感興趣的可以了解一下2023-10-10
shell批量curl接口腳本的簡(jiǎn)單實(shí)現(xiàn)方法
這篇文章主要跟大家介紹了關(guān)于shell批量curl接口腳本的簡(jiǎn)單實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用shell具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2017-08-08
關(guān)于Linux反空閑設(shè)置的兩種方法總結(jié)
下面小編就為大家?guī)?lái)一篇關(guān)于Linux反空閑設(shè)置的兩種方法總結(jié)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-03-03

