Heute will ich euch einmal kurz zeigen, wie ihr unter Windows eine Exe Datei als Service registrieren könnt.

Hintergrund


Im November habe ich mir einen neuen Gamer PC zugelegt. Die Spezifikation lassen sich sehen:  
  • CPU: AMD Ryzen 7 5800X
  • Motherboard: ASUS ROG Strix B550-F
  • GPU: NVIDIA GeForce ROG STRIX RTX 3070
  • RAM: CORSAIR VENGEANCE LPX  2x16 GB DDR-4-3000 
  • SSD 1: SAMSUNG EVO PLUS 970 2TB
  • SSD 2: SAMSUNG QVO SATA 870 2 TB

Natürlich wollte ich direkt über die Systemauslastung beim Zocken oder Arbeiten Bescheid wissen. Dass ich ein Grafana und Prometheus Fanboy bin, ist kein Geheimnis. Für mich kam somit nur eine Lösung zur Überwachung der Systemauslastung infrage.

Einrichtung


Da ich bereits über eine Grafana und Prometheus Umgebung verfügte, musste ich nur die Prometheus Exporter unter Windows installieren. Der Windows Exporter exportiert Metriken wie CPU, RAM oder Disk Auslastung. Doch das reichte mir schlichtweg nicht und so habe ich mich auf die Suche nach einem GPU Exporter gemacht. Schnell bin ich auf folgendes Repository gestossen nvidia_smi_exporter von zhebrakIch habe mir das Repository mit git clone heruntergeladen und mit go build -v die Exe Datei gebaut. Anschliessend konnte ich den Exporter mit ./nividia_smi_exporter.exe starten. Verständlicherweise wollte ich, dass die Exe Datei bei jedem Systemstart automatisch gestartet wird. Zunächst habe ich versucht, die Exe Datei als Service zu registrieren. Dazu nutze ich den Befehl sc.exe create nvidia-smi-exporter binPath= "C:\Users\dario\tools\nvidia_smi\nvidia_smi_exporter.exe". Leider erhielt ich immer wieder eine Fehlermeldung, dass der Service nicht reagiert. Der Grund dafür nicht jede Exe Datei kann direkt als Service registriert werden. 

Lösung


Nach langem Recherchieren bin ich auf die Software NSSM gestossen. Der Name Non Sucking Service Manager sagte schon alles, diese Software musste etwas können. Nach Herunterladen der Software habe ich in das Verzeichnis der NSSM Exe Datei gewechselt. Die Software konnte ich mit nssm install prometheus-nvidia-exporter starten. Prometheus-nvidia-exporter beschrieb dabei den Namen des Services. In folgendem Fenster musste ich den Pfad der Exe Datei auswählen und anschliessend Install service klicken.
nssm-service-installer
NSSM Service Installer

Endergebnis


Das Endergebnis lässte sich sehen und ich kann fortan mein Gamer PC mittels Grafana und Prometheus überwachen. Die JSON Konfigurationsdatei für das Dashboard stelle ich gerne in meinem Gist zur Verfügung.
Grafana Gamer PC Dashboard
   

Ressourcen

Titelbild: Unsplash   

Tesla API Daten in Grafana

Es kommt bei mir nicht selten vor, dass Fancy Visualisierungen von Daten ein “Wow” auslösen. Ein Stück dieses Wow-Effektes will ich dir heute zeigen. In diesem Beitrag zeige ich…


0 5 Minuten

Blog Monitoring – worldPing und Grafana

Ein Blog ist schön und gut, doch was wenn der Blogger nicht bemerkt, dass sein Blog seit Tagen nicht mehr läuft. Die Hintergründe des Ausfalles interessieren den Blog Leser wenig.…


0 4 Minuten

Cloudflare Argo & Access – Kein VPN und Port Forwarding

Jahrelang habe ich die Applikationen in meinem Heimnetzwerk, via VPN oder Port Forwarding für die Aussenwelt erreichbar gemacht. Einmal war VPN die bevorzugte Lösung, das nächste…


0 7 Minuten