OpManager ナレッジベース

CLIによるCPU使用率、メモリ使用率監視、並びに、しきい値違反アラートが発生した時に表示されるtop3プロセスの使用率の値を取得しているコマンドを確認したい。


要望

CLIによるCPU使用率、メモリ使用率監視、並びに、
しきい値違反アラートが発生した時に表示されるtop3プロセスの使用率の値を取得しているコマンドを確認したい。

解説

以下の各コマンドを用い、各種値を取得しております。

・CLIによるCPU使用率

vmstat 1 3 | awk '{for (i=0;i<=NF;i++) if ($i == "id") cmd=i;} {print 100-$cmd}'|tail -1

・CLIによるtop3プロセスのCPU使用率

ps -eo pid,fname,pcpu,ppid,pgid | awk '{if (($4 == $5) || ($1 == $5)) {print $0}}' | sort -k 3nr | head -n 3

・CLIによるメモリ使用率

/usr/bin/free -b | awk '/Mem:|cache:/ {print $2,$3}' | sed 'N;s/n/ /' | awk '{print ($4*100)/$1}'

・CLIによるtop3プロセスのメモリ使用率

ps -eo pid,fname,pmem,ppid,pgid | awk '{if (($4 == $5) || ($1 == $5)) {print $0}}' | sort -k 3nr | head -n 3

・注意事項

OpManager上で使用率のしきい値違反アラート発生時にtop3プロセスのCPU使用率やメモリ使用率を
取得するためには、事前にプロセス監視でCLIの認証に成功している必要があります。

・注意事項2

「CPU使用率」と「top3プロセスのCPU使用率」値が大きく異なる場合がございます。
原因は下記の2点です。

(1)取得コマンドが違うため

「CPU使用率」->リアルタイムでCPU使用率を取得するvmstatコマンドを使用
「top3プロセスのCPU使用率」->プロセスの起動からそのプロセスがCPUを使用した時間の割合を取得するpsコマンドを使用

(2)top3プロセスのCPU使用率取得時、サブプロセスをawkで除外対応処理を行っている

awkコマンドの箇所を削除する方法は以下の通りです。

※top3プロセスのメモリ使用率も同様にawkを使用しているため、削除方法を併せて掲載しております。

<手順>
1. OpManagerを停止

2. [OpManager フォルダ]/conf/opmanager_diagnostics.xmlのファイルを上記の通り修正し保存
-------------------------------
CPU使用率の場合 11行目 (赤色部を削除する)

(修正前)
<PROPERTY name="Linux" value="ps -eo pid,fname,pcpu,ppid,pgid | awk '{if (($4 == $5) || ($1 == $5)) {print $0}}' | sort -k 3nr | head -n"/>

(修正後)
<PROPERTY name="Linux" value="ps -eo pid,fname,pcpu,ppid,pgid | sort -k 3nr | head -n"/>

※実際にOpManagerが実行するコマンドは「ps -eo pid,fname,pcpu,ppid,pgid | sort -k 3nr | head -n 3」となります。

メモリ使用率の場合 30行目 (赤色部を削除する)

(修正前)
<PROPERTY name="Linux" value="ps -eo pid,fname,pmem,ppid,pgid | awk '{if (($4 == $5) || ($1 == $5)) {print $0}}' | sort -k 3nr | head -n"/>

(修正後)
<PROPERTY name="Linux" value="ps -eo pid,fname,pmem,ppid,pgid | sort -k 3nr | head -n"/>

※実際にOpManagerが実行するコマンドは「ps -eo pid,fname,pmem,ppid,pgid | sort -k 3nr | head -n 3」となります。
-------------------------------
3. OpManagerを起動

 

【対応リリース】 x.x

★-----------------------------------------------------------------------------★
OpManager 製品紹介ページはこちら ↓
https://www.manageengine.jp/products/OpManager/
★-----------------------------------------------------------------------------★