mirror of
https://github.com/KevinMidboe/Node-Com-Handler.git
synced 2025-10-29 09:40:27 +00:00
Made changes to cpuTemp to make sure cpu temp reads are do be done only if machine is linux and also added return of both max and min temps alongside avg.
This commit is contained in:
@@ -1,16 +1,15 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
import psutil
|
||||
from platform import system
|
||||
|
||||
def getCpuTemp():
|
||||
# Check if sensors_temperatures exists
|
||||
try:
|
||||
# Define cpu as function of sensors_temperatures
|
||||
cpu = psutil.sensors_temperatures()
|
||||
except AttributeError:
|
||||
error = "'sensors_temperatures' is not supported in this verison of psutil or your OS."
|
||||
print(error)
|
||||
return None
|
||||
sysName = system()
|
||||
if sysName != 'Linux':
|
||||
return {"Error": "Running OS does not support cpu temp reads."}
|
||||
|
||||
# Define cpu as function of sensors_temperatures
|
||||
cpu = psutil.sensors_temperatures()
|
||||
|
||||
# Array for temps for each core.
|
||||
curCpuTemps = []
|
||||
@@ -19,17 +18,10 @@ def getCpuTemp():
|
||||
curCpuTemps.append(temp[1]) # Append to list
|
||||
print(temp[0]+': '+str(temp[1])) # Print output
|
||||
|
||||
# Check if len of curCpuTemps is something so not to
|
||||
# calculate on a empty list
|
||||
if len(curCpuTemps) > 0:
|
||||
# Compute avg of curCpuTemps
|
||||
avgCpuTemps = sum(curCpuTemps)/len(curCpuTemps)
|
||||
return avgCpuTemps
|
||||
print("Avg: " + str(avgCpuTemps))
|
||||
else:
|
||||
print("Couldn't get cpu temp. (division by zero)")
|
||||
return None
|
||||
|
||||
avgCpuTemps = sum(curCpuTemps)/len(curCpuTemps)
|
||||
return {"Avg cpu temp": avgCpuTemps, "Max cpu temp": max(curCpuTemps),
|
||||
"Min cpu temp": min(curCpuTemps)}
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
print(getCpuTemp())
|
||||
Reference in New Issue
Block a user