28 lines
765 B
Python
28 lines
765 B
Python
#!/usr/bin/env python3
|
|
|
|
# https://pimylifeup.com/raspberry-pi-temperature/
|
|
|
|
import time
|
|
import subprocess
|
|
|
|
from prometheus_client import start_http_server, Gauge, REGISTRY, GC_COLLECTOR, PLATFORM_COLLECTOR, PROCESS_COLLECTOR
|
|
|
|
REGISTRY.unregister(GC_COLLECTOR)
|
|
REGISTRY.unregister(PLATFORM_COLLECTOR)
|
|
REGISTRY.unregister(PROCESS_COLLECTOR)
|
|
|
|
def setup_gauge():
|
|
g = Gauge(f'sys_cpu_temp_celsius_degrees', 'CPU Temperature')
|
|
g.set_function(_get_temp)
|
|
|
|
def _get_temp():
|
|
return float(subprocess.run(['/usr/bin/vcgencmd', 'measure_temp'], capture_output=True).stdout.decode('utf-8').replace('temp=', '').replace("'C\n", ''))
|
|
|
|
if __name__ == '__main__':
|
|
setup_gauge()
|
|
start_http_server(8555)
|
|
while True:
|
|
# Stay alive!
|
|
time.sleep(1)
|
|
|