updated cpu_count - use dmidecode #13
17
agent.py
17
agent.py
|
@ -38,9 +38,20 @@ class ServerData:
|
||||||
return ram, disk
|
return ram, disk
|
||||||
|
|
||||||
def get_cpu_count(self):
|
def get_cpu_count(self):
|
||||||
with open('/proc/cpuinfo', 'r') as f:
|
cpu_count = 0
|
||||||
cpuinfo = f.read()
|
if os.path.isfile('/usr/sbin/dmidecode'):
|
||||||
cpu_count = cpuinfo.count('processor')
|
try:
|
||||||
|
output = subprocess.check_output(['sudo', '/usr/sbin/dmidecode', '-t', 'processor']).decode('utf-8')
|
||||||
|
core_match = re.search(r'Core Count: (\d+)', output)
|
||||||
|
thread_match = re.search(r'Thread Count: (\d+)', output)
|
||||||
|
if core_match and thread_match:
|
||||||
|
cpu_count = int(core_match.group(1)) * int(thread_match.group(1))
|
||||||
|
except subprocess.CalledProcessError:
|
||||||
|
pass
|
||||||
|
if cpu_count == 0:
|
||||||
|
with open('/proc/cpuinfo', 'r') as f:
|
||||||
|
cpuinfo = f.read()
|
||||||
|
cpu_count = cpuinfo.count('processor')
|
||||||
logging.info(f"CPU Count: {cpu_count}")
|
logging.info(f"CPU Count: {cpu_count}")
|
||||||
return cpu_count
|
return cpu_count
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user