Psutil – Bibliothek zum Fectch Informationen zum laufenden Prozess und zur Systemauslastung

Psutil ist eine Python-basierte Bibliothek, die eine Schnittstelle zum Überwachen der Ressourcen Ihres Computersystems bietet. Sie können dieses Dienstprogramm und seine verfügbaren APIs verwenden, um alle Details über aktuell ausgeführte Prozesse, ihren Ressourcenverbrauch wie Arbeitsspeicher, Netzwerk- und Festplattennutzung usw. herauszufinden. Es handelt sich um eine plattformübergreifende Anwendung, die auf allen gängigen Betriebssystemen wie Linux, Microsoft Windows funktioniert , MacOS und FreeBSDs. Derzeit verwenden Sie möglicherweise viele verschiedene Dienstprogramme/Befehle, um Ihre Systemprozesse zu überwachen, aber Psutil kombiniert die Funktionen von Befehlen wie top, ps, netstat, lsof, df usw. an einem einzigen Ort. Es läuft sowohl auf 32- als auch auf 64-Bit-Systemen und ist eine extrem optimierte Bibliothek. Es verwendet den effizientesten Weg, um Ihre gewünschten Systeminformationen zu sammeln. In diesem Tutorial lernen wir den Installations- und Verwendungsprozess für dieses Dienstprogramm. Wenn Sie über Programmier- oder Systemskript-Kenntnisse verfügen, sollten Sie in der Lage sein, die Funktionsweise dieses Dienstprogramms mit großer Leichtigkeit zu erlernen. Schnapp dir eine Tasse Kaffee und los gehts 🙂

So installieren Sie Psutil unter Ubuntu 16.10 / 16.04

Zur Demonstration verwenden wir die neueste Ubuntu-Version 16.10, um die Verwendung dieser Bibliothek zu installieren und zu zeigen. Dieselben Anweisungen sollten für jede ältere Version von Ubuntu und Debian-basierten Systemen funktionieren. Der einfachste Weg, diese Bibliothek zu installieren, ist die Verwendung von pip. Führen Sie den folgenden Befehl auf Ihrem Systemterminal aus, um das Dienstprogramm pip zu installieren.

sudo apt install python-pip

Führen Sie nach der Installation des Pip den folgenden Befehl aus, um psutil zu installieren.

sudo pip install psutil

Herzliche Glückwünsche! Psutil wurde jetzt erfolgreich installiert. Wir werden weitermachen und einige seiner sehen example Verwendet.

So verwenden Sie Psutil

Lassen Sie uns zunächst verstehen, wie wir Python-Befehle auf unserem Systemterminal ausführen können. Python bietet eine native Shell, führen Sie einfach den Befehl “python” aus und Sie sollten zur Shell gelangen, wo Sie Python-bezogene Befehle ausführen können. Der folgende Screenshot wird diesen Punkt weiter demonstrieren.

Jetzt werden wir alle Befehle für die Psutil-Bibliothek in dieser Shell ausführen.

Um die CPU-Auslastung in Prozent zu ermitteln, müssen wir die folgenden zwei Befehle in der Python-Konsole ausführen. Der allererste Befehl importiert die psutil-Bibliothek und der nächste wird verwendet, um den Wert des aktuellen CPU-Verbrauchs in Prozent zurückzugeben.

import psutil
psutil.cpu_percent(interval=1)

Der folgende Screenshot soll dieses Konzept weiter verdeutlichen.

Der folgende Befehl gibt die Gesamtzahl der CPU unseres Linux-Systems zurück. Wir haben die example Ausgabe auch unten.

psutil.cpu_count()

>> psutil.cpu_count()
1

Wenn Sie den Wert für den CPU-Frequenzparameter anzeigen möchten, verwenden Sie den folgenden Befehl in der Python-Shell.

psutil.cpu_freq()

Um den virtuellen Speicherverbrauch Ihres Systems zu überwachen, verwenden Sie die folgenden Befehle in der Konsole.

import psutil
mem = psutil.virtual_memory()
mem

Hier ist die Beispielausgabe für das obige Snippet.

aun@ubuntu:~$ python
Python 2.7.12 (default, Nov 19 2016, 06:48:10)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import psutil
>>> mem = psutil.virtual_memory()
>>> mem
svmem(total=1022431232, available=315588608, percent=69.1, used=689242112, free=26132480, active=370671616, inactive=366432256, buffers=17944576, cached=289112064, shared=2854912)
>>>

Um den Swap-Speicherverbrauch anzuzeigen, verwenden Sie die Funktion “psutil.swap_memory()” auf der Konsole.

>> psutil.swap_memory()
sswap(total=1071640576, used=137801728, free=933838848, percent=12.9, sin=14856192, sout=146563072)

Lassen Sie uns einige datenträgerbezogene Vorgänge mit Psutil ausführen. Führen Sie den folgenden Codeausschnitt aus, um herauszufinden, über welche Partitionen die Festplatte Ihres Systems verfügt.

 import psutil
psutil.disk_partitions()

Beispielausgabe:

>>> import psutil
>>> psutil.disk_partitions()

[sdiskpart(device=”/dev/sda1″, mountpoint=”/”, fstype=”ext4″, opts=”rw,relatime,errors=remount-ro,data=ordered”)]

>>>

Der folgende Ausschnitt zeigt Ihnen den aktuellen Festplattenverbrauch auf der Root-Partition Ihres Systems.

import psutil
psutil.disk_usage('/')

Beispielausgabe:

> import psutil
>>> psutil.disk_usage('/')
sdiskusage(total=19945680896, used=4598263808, free=14310637568, percent=24.3)
>>>

Psutil ist auch gut geeignet, um die Hardwarekomponenten Ihres Systems zu überwachen. Für example, finden Sie Details zu den Hardware-Temperatursensoren Ihres Systems, indem Sie die folgenden Parameter verwenden.

psutil.sensors_temperatures()

Die Ausgabe wird wie folgt angezeigt. Sie können diese Ausgabe in Ihrem weiter verwenden bash oder Programmierskripte, um jede Art von Triggern zu generieren.

>>> psutil.sensors_temperatures()
{'coretemp': [shwtemp(label="Physical id 0", current=100.0, high=100.0, critical=100.0), shwtemp(label="Core 0", current=100.0, high=100.0, critical=100.0)]}

Lassen Sie uns nun ein wenig mehr darüber erfahren, wie Sie Details zu laufenden Prozessen herausfinden. Der folgende Befehl zeigt die Prozess-IDs (PIDs) der derzeit ausgeführten Prozesse auf unserem Linux-System an.

import psutil
psutil.pids()

Hier ist example Ausgabe dieses Befehls:

>> import psutil
>>> psutil.pids()
[1, 2, 3, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 28, 29, 30, 31, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 80, 95, 96, 144, 145, 146, 147, 148, 149, 150, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, ......]

psutil.pid_exists(pid) ist ein weiterer Befehl, der verwendet wird, um festzustellen, ob ein Prozess mit der angegebenen ID existiert oder nicht. In ähnlicher Weise hat es auch viele andere Funktionen, die beim Ableiten gewünschter Ausgaben aus Systemprozessen äußerst hilfreich sind.

Psutil ist ein äußerst hilfreiches Dienstprogramm, es bietet eine große Anzahl von Funktionen/APIs, die verwendet werden können, um Ihr System richtig zu überwachen. Sie werden erstaunt sein zu wissen, dass die derzeit über 4600 Open-Source-Projekte Psutil im Backend verwenden, um viele Aufgaben zur Überwachung von Systemressourcen durchzuführen.

Psutil wurde auch auf viele andere Sprachen portiert, bemerkenswert sind: Ruby, C, Go, Node, Rust. Vollständige Details zur Portabilität finden Sie auf Github.

Ich hoffe, Ihnen hat dieser Artikel gefallen, Psutil hat viel zu bieten, Sie sollten in der Lage sein, viele aufregende Funktionen / APIs zu finden, die Sie täglich verwenden können, um Ihre Systemleistung zu verbessern. Wenn Sie Fragen oder Feedback haben, können Sie uns dies gerne im Kommentarbereich des Artikels mitteilen.