【psutil】PythonでCPU・メモリ使用率やプロセスを監視をする方法

【psutil】PythonでCPU・メモリ使用率やプロセスを監視をする方法 プログラミング

CPUやメモリの使用率をPythonで確認できるのを知ってますか?
それも、WindowsやLinuxの違いを気にすることなく。

もちろん、WindowsとmacOSでの区別も必要ありません。
同じコードを書くだけで、それぞれの使用率を数値で取得できるのです。

地味にスゴイと思いませんか?
この地味にスゴイことを可能にするのが、psutilライブラリです。

本記事の内容

  • psutilとは?
  • psutilのシステム要件
  • psutilのインストール
  • psutilの動作確認

それでは、上記に沿って解説していきます。

psutilとは?

psutilは、実行中のプロセスやシステムの利用状況の情報をPythonで取得するためのライブラリです。
ここで言うシステムとは、以下。

  • CPU
  • メモリ
  • ディスク
  • ネットワーク
  • センサー

上記システムの利用状況をPythonで取得できます。

また、psutilの最初バージョンとなる0.1.0のリリースは、2009年です。
そこから、頻繁に更新されています。

psutilの最新バージョンは、5.8.0となります。
この最新バージョンは、2020年12月19日にリリースされています。

次は、psutilのシステム要件を確認していきます。

psutilのシステム要件

psutilは、クロスプラットフォーム対応のライブラリです。
公式には、以下のOSをサポートしています。

  • Linux
  • Windows
  • macOS
  • FreeBSD, OpenBSD, NetBSD
  • Sun Solaris
  • AIX

また、サポートしているPythonのバージョンは以下。

  • Python 2.6
  • Python 2.7
  • Python 3.4 以降

以上より、基本的にpsutilはどこでも動くということですね。
ただし、AndroidやiOSは未対応となります。

以上、psutilのシステム要件でした。
特に注意すべき点はありません。

では、psutilをインストールしていきましょう。

psutilのインストール

最初に、現状のインストール済みパッケージを確認しておきます。

>pip list
Package    Version
---------- -------
pip        20.3.3
setuptools 51.1.2

次にするべきことは、pip自体の更新です。
pipコマンドを使う場合、常に以下のコマンドを実行しておきましょう。

python -m pip install --upgrade pip

では、psutilのインストールです。
psutilのインストールは、以下のコマンドとなります。

pip install psutil

インストールは一瞬で完了です。
では、どんなパッケージがインストールされたのかを確認しましょう。

>pip list
Package    Version
---------- -------
pip        20.3.3
psutil     5.8.0
setuptools 51.1.2

最新バージョンのpsutil 5.8.0がインストールされています。
psutilには、他に依存するライブラリがありません。
よって、psutilは導入しやすいライブラリと言えます。

最後に、psutilの動作確認を行いましょう。

psutilの動作確認

メモリの使用率を確認するプログラムです。

import psutil

memory_state = psutil.virtual_memory()
print(memory_state.percent)

上記を実行すると、メモリの使用率が表示されます。

Windowsなら、タスクマネージャーでメモリ使用率を確認できます。
プログラムの実行結果 59.7

Linux(Ubuntu)なら、freeコマンドでメモリ使用率(計算必要)を確認できます。
プログラムの実行結果 5.6

なお、WindowsとUbuntuで全く同じPythonのコードを利用しています。
個人的には、これが地味にスゴイと感じます。

ここまで確認できれば、問題ありません。
あと、プロセス監視が使えそうです。

バッチ処理の二重起動などを簡単に制御できそうです。
それに関しては、また別の記事で解説していきます。

タイトルとURLをコピーしました