diff racc.py @ 2:0ecb388a0b90

start power code
author drewp@bigasterisk.com
date Sat, 04 Mar 2023 12:10:36 -0800
parents 04c8a1b3976b
children 3d7fc94a404a
line wrap: on
line diff
--- a/racc.py	Fri Mar 03 21:24:53 2023 -0800
+++ b/racc.py	Sat Mar 04 12:10:36 2023 -0800
@@ -14,12 +14,14 @@
 import logging
 import socket
 import sys
-if sys.implementation._multiarch == 'darwin':
+if psutil.OSX:
     import idle_osx as idle
     import volume_osx as volume
-elif 'linux' in sys.implementation._multiarch:
+    import power_osx as power
+elif psutil.LINUX:
     import idle_linux as idle
     import volume_linux as volume
+    import power_linux as power
 else:
     raise NotImplementedError(repr(sys.implementation))
 
@@ -41,6 +43,7 @@
 
 RACC_RUNNING = Gauge("racc_running", "program is running", ['host', 'prog'])
 RACC_IDLE = Gauge("racc_idle", "desktop mouse/kb idle seconds", ['host'])
+RACC_SCREEN = Gauge("racc_screen", "screen in unlocked/on mode", ['host'])
 
 
 def update_progs(first_run):
@@ -61,7 +64,7 @@
     ]:
         RACC_RUNNING.labels(host=hostname, prog=p).set(p in progs)
     RACC_IDLE.labels(host=hostname).set(idle.get_idle_seconds())
-
+    RACC_SCREEN.labels(host=hostname).set(power.is_screen_on())
 
 async def root(req: Request) -> HTMLResponse:
     vol = await volume.get_volume()