Gibt es eine Möglichkeit, Systemstatus in Python, zum Beispiel die Menge an Speicher frei, Prozesse, die ausgeführt werden, CPU laden und so weiter. Ich weiß auf Linux Ich kann dies aus dem Verzeichnis/Proc, aber ich möchte dies auch auf Unix und Windows tun.Abrufen des Systemstatus in Python
Antwort
ich weiß nicht, von einer solchen Bibliothek/Paket das unterstützt derzeit sowohl Linux als auch Windows. Es gibt libstatgrab, die nicht sehr aktiv entwickelt zu sein scheinen (es unterstützt bereits eine ordentliche Vielzahl von Unix-Plattformen) und das sehr aktive PSI (Python System Information), das unter AIX, Linux, SunOS und Darwin funktioniert. Beide Projekte zielen darauf ab, Windows-Unterstützung irgendwann in der Zukunft zu haben. Viel Glück.
Ich glaube nicht, gibt es eine Cross-Plattform-Bibliothek für die noch (es sollte auf jeden Fall ein, obwohl sein)
ich aber mit Ihnen einem Schnipsel liefern kann ich die aktuelle CPU-Last von /proc/stat
zu erhalten verwendet, um unter Linux:
bearbeiten: ersetzt schrecklich undokumentierten Code mit etwas mehr pythonic und dokumentiert Code
import time
INTERVAL = 0.1
def getTimeList():
"""
Fetches a list of time units the cpu has spent in various modes
Detailed explanation at http://www.linuxhowtos.org/System/procstat.htm
"""
cpuStats = file("/proc/stat", "r").readline()
columns = cpuStats.replace("cpu", "").split(" ")
return map(int, filter(None, columns))
def deltaTime(interval):
"""
Returns the difference of the cpu statistics returned by getTimeList
that occurred in the given time delta
"""
timeList1 = getTimeList()
time.sleep(interval)
timeList2 = getTimeList()
return [(t2-t1) for t1, t2 in zip(timeList1, timeList2)]
def getCpuLoad():
"""
Returns the cpu load as a value from the interval [0.0, 1.0]
"""
dt = list(deltaTime(INTERVAL))
idle_time = float(dt[3])
total_time = sum(dt)
load = 1-(idle_time/total_time)
return load
while True:
print "CPU usage=%.2f%%" % (getCpuLoad()*100.0)
time.sleep(0.1)
[os.getloadavg()] (http://docs.python.org /library/os.html#os.getloadavg) –
https://pypi.python.org/pypi/psutil
import psutil
psutil.get_pid_list()
psutil.virtual_memory()
psutil.cpu_times()
usw.
- 1. Index des Python-Iteratorobjekts abrufen
- 2. Abrufen des Ordnernamens der Datei in Python
- 3. Abrufen des Dateinamens von Python-Generator-Objekt
- 4. Abrufen des Dateinamens mit Python Watchdog
- 5. Abrufen der Befehlszeilenargumente des Python-Interpreters
- 6. Abrufen des Rückgabewerts eines Python-Skripts
- 7. Kafka-Python-Fehler beim Abrufen des Anforderungsschlüssels
- 8. Den Verzeichnispfad des absoluten Dateipfads in Python abrufen
- 9. Abrufen des Primärschlüssels (ID) in Fixture (Python, SQLAlchemy)
- 10. Abrufen von Listenelementen in Python
- 11. Dateipfad des importierten Moduls abrufen
- 12. Abrufen des Namens des aktiven Fensters
- 13. Abrufen des Eigenschaftsnamens des Objekts
- 14. Abrufen des Laufwerksnamens in Java
- 15. Abrufen des Standardstammverzeichnisses in Java
- 16. Abrufen des Verzeichnisnamens in Java
- 17. Abrufen des Namens in MySQL
- 18. Best Practices/Ideen zum Einrichten des Systemstatus beim Testen der Integration?
- 19. Abrufen der Monitorgröße in Python
- 20. Abrufen der Netzwerkmaske in Python
- 21. Abrufen aller Cookies in Python
- 22. Abrufen des Windows-Benutzerspracheneinstellungswerts
- 23. Abrufen des aktuellen Modulnamens
- 24. Programmgesteuertes Abrufen des Webanforderungsinitiators
- 25. Wert des Registrierungsschlüssels abrufen
- 26. Abrufen des SCON-Stammverzeichnisses
- 27. Python-API zum Abrufen des öffentlichen PGP-Schlüssels vom Schlüsselserver?
- 28. Abrufen des Assemblynamens
- 29. Ablaufzeit des Cache abrufen
- 30. Speicher des Objekts abrufen
Duplikat dieser Fragen: http://stackoverflow.com/questions/276052/how-to-get-current-cpu-and-ram-usage- in-python http://stackoverflow.com/questions/466684/how-can-i-return-system-information-in-python/467291 –