JP1サポート技術者ブログ

  • パフォーマンス管理
2017.08.02

【JP1/PFM】CPU利用率が高騰!何のプロセスがCPUを使っている?

【JP1/PFM】CPU利用率が高騰!何のプロセスがCPUを使っている?

「サーバ監視」を行う中で、監視項目に「CPU利用率を監視するというケースはとても多いのではないでしょうか。ただ、特定の時間にCPU使用率が高騰してアラートを受けても、結局何が原因でCPU使用率が高くなったのか特定できないといった例も、多くあるのも事実だと思います。

何らかのプロセスが原因なのだけど、一体何のプロセスが原因なのかわからず、問題解決が出来ないまま一時的な問題として置いておかれてしまったりはしていないでしょうか?

そこで、サポートセンターにも実は問い合わせが多い、「JP1/PFMによるプロセス毎のCPU使用率レポート方法」をご紹介します。さらに、全体の「CPU使用率」のレポートから簡単に「CPU高騰の原因となっているプロセスの特定方法」も合わせてご説明します。

プロセス毎のCPU使用率レポート方法

1.プロセス毎のCPU使用率のデータを「蓄積」する

プロセス毎のCPU使用率を取得するレコードは「PD_PDI」になります。
「PD_PDI」レコードを定期的なレポートとして表示するには、データを蓄積する必要があります。

「PD_PDI」のデータを蓄積する設定はデフォルトでは無効になっているのでご注意ください。まずは、「PD_PDI」レコードのデータを蓄積する設定にする方法を説明します。

サービス階層の設定画面から「PDI」レコードのログを蓄積するように、下記の画面の値を'Yes'に変更してください(デフォルトは'No'です)。

「PD_PDI」レコードの詳細

「PD_PDI」レコードには、プロセス毎のページング、メモリー、および時間の使用状況などについての、ある時点での状態を示すパフォーマンスデータが格納されます。
詳細は、以下のマニュアルをご確認ください。

JP1 Version 11 JP1/Performance Management - Agent Option for Platform(Windows(R)用)
 8. レコード 「Process Detail Interval(PD_PDI)」
 https://itpfdoc.hitachi.co.jp/manuals/3021/30213A5120/PCAT0258.HTM

2.プロセス毎のCPU使用率を「表示」する

「CPUを25%以上使用しているプロセス」のレポートを作成します。
レポート階層にて、新規で以下設定値のレポートを作成してください。

レポート名:  CPUを25%以上使用しているプロセス


フィールド レコード Process Detail Interval(PD_PDI)
フィールド CPU%
Program
フィルター 条件式 (CPU% > "25.000
AND Program <> "Idle"
AND Program <> "_Total")
表示設定(履歴レポート) 対象期間 レポートの表示時に指定
レポート間隔
表示形式 表/一覧/グラフ すべてにチェック
グラフのプロパティ グラフの種類 折れ線
ドリルダウン - -

CPU高騰の原因となっているプロセスの特定方法

作成した「CPU使用率」のレポートから使用率の高いデータを確認して、そのデータの中で、どのプロセスが25%以上のCPUを利用しているか確認できるようにします。
ここでは、ドリルダウン機能(※)を利用して、「CPU使用率」の関連レポートとして、「プロセス毎のCPU使用率」を設定します。
※ドリルダウン機能とは、レポートに、別のレポートを関連付ける機能のことです。

この設定により、例えば「CPU使用率」が90%の値を取得したときに、ドリルダウンで「プロセス毎のCPU使用率」を表示することで、簡単にどのプロセスが原因でCPU使用率が高くなっていたか確認ができます。

レポート階層にて、新規で以下内容のレポートを作成してください。

レポート名:  CPU使用率


フィールド レコード System Overview(PI)
フィールド CPU%
フィルター 条件式 -
表示設定(履歴レポート) 対象期間 レポートの表示時に指定
レポート間隔
表示形式 表/一覧/グラフ すべてにチェック
グラフのプロパティ グラフの種類 折れ線
ドリルダウン フィールドの
ドリルダウン
CPU%に[プロセス毎のCPU使用率]の
レポートをバインド

エージェント階層から、監視対象のサーバを選択し、作成した上記「CPU使用率」レポートを選択して、CPU使用率が高くなっている時間帯の「開始日時」と「終了日時」を入力し、レポートを表示してください。

高くなっている箇所を画面下にある「表」にて確認するとCPU使用率が上がっている箇所があります。
この表示されている値を選択すると、25%以上のCPUを利用しているプロセスのレポートが表示されます。

※本環境では4コアのCPUがあるため、プロセスにより99%利用されている3コア分のCPU利用率が表示されています。

まとめ

CPU利用率は単に異常値を監視し障害対応に利用するだけでなく、監視データを蓄積することによりプロセス毎のCPU使用率が取得できるようになるため、どのプロセスが原因でCPU使用率が高くなっているか確認できるようになります。もし常に特定の業務アプリケーションのCPU利用率が高い・・・ということを発見すれば、開発部門と課題を連携して、業務改善にもつなげることが出来ます。具体的な設定でお悩みだった皆さま、ぜひご活用ください。

【補足】JP1/PFMの構成

製品構成について案内します。「プロセス毎のCPU使用率」を確認したいサーバに、以下の製品がインストールされている必要があります。
・JP1/PFM-Base
・JP1/PFM-Agent Option for Platform(Windows)または(UNIX)
※別途、別のサーバに「JP1/PFM-Manager」がインストールされている必要があります。

製品正式名称/略称表記 および機能対応バージョン

JP1/Performance Management - Agent Option for Platform/JP1/PFM-AOP Version7.0以降
JP1/Performance Management - Base/JP1/PFM-Base Version7.0以降


JP1ブログをご覧いただいているみなさまへご案内

いつもJP1サポート技術者ブログをご覧いただきありがとうございます。

アシストとJP1保守契約を締結されている方は、Webサポートセンター「AWSC」をご利用いただけます。本ブログサイトではご紹介しきれない3,000件以上のFAQを公開していますので、是非ご利用ください。
また、アシストではJP1ユーザ企業様向けの無償セミナーや支援サービスを多数ご提供しています。JP1の潜在リスクを洗い出す診断サービスや、バージョンアップ時のノウハウをご紹介するセミナーなどご用意していますので、貴社の課題解決へとお役立てください。アシストと保守契約を締結されていないお客様にもご参加いただけます。詳細は、下記リンクよりご確認ください。



執筆者情報

2007年アシストに入社し一貫してJP1の顧客サポートを担当。「JP1サポート技術者ブログ」の編集リーダー。「JP1認定シニアコンサルタント」の資格保有者。このブログでは、知って便利な情報を紹介したいと思います。

休みの日は、家族の食事を毎食作り、子どもの世話をしています。

本田 祐次

関連している記事

  • パフォーマンス管理
2020.09.28

【JP1/PFM】ツール自体は大丈夫? 予期せぬ監視停止などのトラブルを防ぐ、「JP1/PFM」のヘルスチェック!

予期せぬ監視の停止などを防ぐため、JP1自身の健康状態の管理「ヘルスチェック」を行い、JP1自体の不調を素早く検知する方法をご紹介します。

  • パフォーマンス管理
2019.09.30

【JP1/PFM】パフォーマンス低下をいち早くキャッチ!JP1/IMとの連携で監視を一元管理

JP1/PFMとJP1/IMを連携させることで、JP1/PFMが検知したパフォーマンス劣化をいち早くキャッチし、詳細レポートをJP1/IMから参照できるようになります。

  • ジョブ管理
  • 統合管理
  • パフォーマンス管理
  • ネットワーク管理
  • 資産管理
2019.02.07

【JP1】Version 12の新機能一覧

2019年1月22日、統合システム運用管理製品「JP1」から3年ぶりとなるメジャーバージョン「Version 12」がリリースされました。新製品に実装された機能を紹介します。

ページの先頭へ戻る