自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Linux實用監(jiān)控腳本——使用 Shell 檢測進(jìn)程 CPU 利用率

系統(tǒng) Linux
CPU 過高可能由于業(yè)務(wù)量過負(fù)荷或者出現(xiàn)死循環(huán)等異常情況,通過腳本對業(yè)務(wù)進(jìn)程 CPU 進(jìn)行時時監(jiān)控,可以在 CPU 利用率異常時及時通知維護(hù)人員,便于維護(hù)人員及時分析,定位,以及避免業(yè)務(wù)中斷。

在對應(yīng)用服務(wù)進(jìn)行維護(hù)時,我們經(jīng)常遇到由于 CPU 過高導(dǎo)致業(yè)務(wù)阻塞,造成業(yè)務(wù)中斷的情況。CPU 過高可能由于業(yè)務(wù)量過負(fù)荷或者出現(xiàn)死循環(huán)等異常情況,通過腳本對業(yè)務(wù)進(jìn)程 CPU 進(jìn)行時時監(jiān)控,可以在 CPU 利用率異常時及時通知維護(hù)人員,便于維護(hù)人員及時分析,定位,以及避免業(yè)務(wù)中斷。

[[275052]]

下面的函數(shù)可獲得指定進(jìn)程 ID 的進(jìn)程 CPU 利用率。它有一個參數(shù)為進(jìn)程 ID,它首先使用 ps 查找進(jìn)程信息,同時通過「grep -v」過濾掉「%CPU」行,最后通過 awk 查找 CPU 利用百分比的整數(shù)部分(如果系統(tǒng)中有多個 CPU,CPU 利用率可以超過 100%)。

對業(yè)務(wù)進(jìn)程 CPU 進(jìn)行實時監(jiān)控

  1. function GetCpu  
  2.  {  
  3.  CpuValue=`ps -p $1 -o pcpu |grep -v CPU | awk '{print $1}' | awk - F. '{print $1}'`  
  4.  echo $CpuValue  
  5.  } 

下面的功能是通過上面的函數(shù) GetCpu 獲得此進(jìn)程的 CPU 利用率,然后通過條件語句判斷 CPU 利用率是否超過限制,如果超過 80%(可以根據(jù)實際情況進(jìn)行調(diào)整),則輸出告警,否則輸出正常信息。

判斷 CPU 利用率是否超過限制

  1. function CheckCpu  
  2.  {  
  3.  PID=$1  
  4.  cpu=`GetCpu $PID`  
  5.  if [ $cpu -gt 80 ]  
  6.  then  
  7.  {  
  8.  echo “The usage of cpu is larger than 80%” 
  9.  }  
  10.  else  
  11.  {  
  12.  echo “The usage of cpu is normal” 
  13.  }  
  14.  fi  
  15.  } 

示例演示:

(1) 源程序(假設(shè)上面已經(jīng)查詢出 TestApp 的進(jìn)程 ID 為 11426)

  1. CheckCpu 11426 

(2) 結(jié)果輸出

  1. The usage of cpu is 75  
  2. The usage of cpu is normal  
  3. [dyu@xilinuxbldsrv shell]$ 

(3) 結(jié)果分析

從上面的輸出可見:TestApp 程序當(dāng)前的 CPU 使用為 75%,是正常的,沒有超過 80% 的告警限制。

作為 IT 運維工程師,對單個進(jìn)程CPU利用率設(shè)置監(jiān)控告警可以在一定程度上降低系統(tǒng)異常,保障業(yè)務(wù)穩(wěn)定的運行。試想,如果擁有一個能夠監(jiān)控全局,實現(xiàn)業(yè)務(wù)告警風(fēng)險提醒的運維協(xié)作工具呢?定能極大提升工作效率,加強團(tuán)隊運維保障能力! 

 

責(zé)任編輯:趙寧寧 來源: 今日頭條
相關(guān)推薦

2017-08-25 15:56:54

Linuxproc文件系統(tǒng)CPU利用率

2019-08-23 06:22:47

LinuxShell監(jiān)控腳本

2010-03-11 16:49:55

Linux CPU利用

2013-01-04 10:44:31

IBMdW

2019-03-05 15:53:40

Linux服務(wù)器CPU

2011-04-02 11:16:16

MRTG監(jiān)控帶寬

2023-04-04 09:22:50

LinuxCPU命令

2014-04-09 16:52:24

NetHogs網(wǎng)絡(luò)帶寬開源監(jiān)控

2017-05-03 11:10:14

Linux進(jìn)程監(jiān)控cpustat

2012-10-11 10:21:33

數(shù)據(jù)中心CPU利用率服務(wù)器效率

2024-10-14 13:01:33

AOTcpu符號

2011-03-17 15:16:38

2020-09-23 06:00:04

ShellLinux郵件監(jiān)控

2020-08-03 14:17:34

CPU內(nèi)存系統(tǒng)運維

2019-05-20 16:21:51

LinuxShell監(jiān)控磁盤

2024-06-26 09:29:53

2009-12-15 15:12:05

Linux限制進(jìn)程cp

2019-08-01 09:35:09

LinuxBashmessages

2019-01-23 10:21:32

吞吐量響應(yīng)時間CPU

2010-03-15 15:01:37

點贊
收藏

51CTO技術(shù)棧公眾號