Prometheus Exporter Modul, Dashboard für Grafana, Config für Prometheus

Detailliertere Anleitung folgt noch. (Gerne auch freiwillige vor :))

Ich habe nur bereits ein paar Anfragen bekommen und wollte den „mutigen“ und „willigen“ schon mal meine Daten zur Verfügung stellen :wink:

1. Modul installieren: GitHub - paresy/symcon_exporter: Prometheus Exporter for IP-Symcon
2. Instanz erstellen → Prometheus
3. Prometheus installieren. z.B. über Docker oder direkt unter Windows.
4. Prometheus Config anpassen, sodass IP-Symcon ein weitere Job ist.


global:
  scrape_interval: 15s
  scrape_timeout: 10s
  evaluation_interval: 15s
alerting:
  alertmanagers:
  - static_configs:
    - targets: [
    ]
    scheme: http
    timeout: 10s
    api_version: v1
scrape_configs:
- job_name: prometheus
  honor_timestamps: true
  scrape_interval: 15s
  scrape_timeout: 10s
  metrics_path: /metrics
  scheme: http
  static_configs:
  - targets:
    - localhost:9090    


- job_name: symcon
  scrape_interval: 5s
  metrics_path: /hook/metrics
  basic_auth:
    username: 'xxxx'
    password: 'xxxx'  
  static_configs:
  - targets:
    - 192.168.1.1:3777

5. Prometheus starten und prüfen, ob alles passt:

http://127.0.0.1:9090


6. Grafana installieren und starten

http://127.0.0.1:3000

7. Grafana: Prometeus als DataSource einrichten

8. Grafana Dashboard importieren

Dashboard (Legacy) bis IP-Symcon 6.0
IP-Symcon-Grafana.json.zip (2.58 KB)

Dashboard kompatibel ab IP-Symcon 6.1 mit mehr Metriken
IP-Symcon-Grafana-6.1.json.zip (5,1 KB)

Hinweis: Für MessageQueue/DataFlow Statistiken müssen die Spezialschalter MessageQueueWatch und DataFlowWatch aktiv sein. „Current Internal Instance Queue Sizes“ kommt erst zu IP-Symcon 6.2

Gute Nacht!

paresy

1 „Gefällt mir“

Hallo
Hab heute mal die Sachen ausprobiert. Anscheinend hab ich ein
Problem mit Prometheus. Config wie oben genommen und die IP fuer job_name: symconxyz angepasst.
Konfiguration fuer Grafana importiert.
In Grafana hab ich ueberall die Anzeige „No Data“.
In Prometheus hab ich eine Fehlermeldung:

Gesendet von iPad mit Tapatalk

Sehr cool :), dann kannst du auch kein shell_exec ausführen, ich bin nicht allein.

Schau mal auf das Ergebnis vom webhook, du kannst das direkt im Browser aufrufen und dann mal bis zum Ende scrollen. Dort wird eine Fehlermeldung stehen ;).

Update:
Ist localhost richtig? Hast du alles auf einem Server installiert?

Hallo
localhost ist richtig. Alles auf einem Server ( Windows ).
Webhook schon nachgesehen , aber keinen Fehler gefunden.
Das Ende sieht so aus :

TYPE symcon_memory_swap_total_bytes gauge

symcon_memory_swap_total_bytes 19594981376.000000

HELP symcon_memory_swap_available_bytes Available swap memory

TYPE symcon_memory_swap_available_bytes gauge

symcon_memory_swap_available_bytes 11147530240.000000

HELP symcon_memory_virtual_total_bytes Total virtual memory

TYPE symcon_memory_virtual_total_bytes gauge

symcon_memory_virtual_total_bytes 140737488224256.000000

HELP symcon_memory_virtual_available_bytes Available virtual memory

TYPE symcon_memory_virtual_available_bytes gauge

symcon_memory_virtual_available_bytes 140730021433344.000000

HELP symcon_filesystem_total_bytes Total diskspace

TYPE symcon_filesystem_total_bytes gauge

symcon_filesystem_total_bytes{device=„c:“} 999558213632.000000

HELP symcon_filesystem_available_bytes Available diskspace

TYPE symcon_filesystem_available_bytes gauge

symcon_filesystem_available_bytes{device=„c:“} 764100075520.000000

Gesendet von iPad mit Tapatalk

Das sieht gut aus, dann muss Michael sich äußern.

Fix für das Windows Problem ist jetzt online :slight_smile:

paresy

Hallo
In Prometheus sieht es jetzt gut aus ,nach Modulupdate.
Schau mir jetzt mal Grafana an.

Gesendet von iPad mit Tapatalk

Hallo
So jetzt laeuft Gravana mit Kurven etc.
Hab noch einen Job in der Prometheus Config
anlegen muessen weil in Grafana die Kurven als Job „symconsteiner“ waren.
In Prometheus war ein Job mit Name „symconxyz“.
Den kannte irgendwie Grafana nicht.
Vieleicht gehts es auch einfacher, aber so wars mir schneller.

Gesendet von iPad mit Tapatalk

Ah, stimmt. Ich hab den Grafana Export mal korrigiert. Jetzt sollte es klappen, wenn es in Prometheus ‚symcon‘ heißt.

paresy

OK, klappt super. Jetzt fehlt ja nur noch der Zugriff auf die Variablen

Kann mir mal jemand von den „mutigen“ und „willigen“ kurz und knapp erläutern wie man das grob in Betrieb nimmt auf einem Windows Server?
Grafana habe ich heruntergeladen und komme mit dem Browser auch auf die Oberfläche, scheitere da aber schon beim Login. Prometheus habe ich ebenfalls heruntergeladen und entpackt. Dort finde ich jetzt mehrere exe Files in dem entpackten Verzeichnis. Welches ist denn davon auszuführen bzw. wie ist Prometheus dauerhaft zu starten das es mit dem Serverstart mit gestartet wird?

OK, klappt super. Jetzt fehlt ja nur noch der Zugriff auf die Variablen

In dem Prometheus Verzeichnis findest du eine yml Datei. Diese öffnen und die Config aus Beitrag einfügen (komplett, alles andere löschen), WICHTIG: Letzte Zeile die IP vom Symcon Server eintragen speichern und Prometheus starten.
Das war es schon in Prometheus.
Dann in Grafana einloggen (admin, admin) und Daschboard (json Datei aus Beitrag 1) importieren,

Fertig

PS: Benutzername und Passwort im Symcom Exporter Modul leer lassen

Wie starte ich dann Prometheus mit Doppelklick auf prometheus.exe? Das Fenster muss dann dauerhaft offen bleiben? Gibt es auch eine Möglichkeit Prometheus als Dienst auszuführen mit dem Start des Windows Servers ohne die exe nutzten zu müssen?

Da muss man erst mal drauf kommen. Wenn man sich auf der Webseite einloggt ist der Grafana Nutzer und Passwort ja ein anderer.

Bei Data Source muss ich dann wohl Prometheus auswählen, das hat geklappt. Muss man da irgendwas absichern?
Beim Einfügen des JSON unter JSON Model sagt Grafana Dashboard not found. Was muss ich denn das noch alles anpassen?

zu 1: Ja pronetheus.exe starten. ob und wie es als Dienst eingerichtet wird, weiss ich auch noch nicht.
zu 2; ja, Datasource ist prometheus, aber über den Import ist das doch nicht erforderlich. Import über das Plus Zeichen links in Grafana, dann Import auswählen und dann Upload json File. Anpassungen sind nicht erforderlich

Hallo
Ich nichts eingefuegt in JSON Model.
Links oben auf + und dann Import , Upload .json file.

Vielen Dank, das hat so weit geklappt. Gibt es eine Möglichkeit so Graphen aus Grafana auch einzeln im Webfront anzuzeigen, oder kann man immer nur ein gesamtes Dashboard als externe Seite im Webfront einbinden?

Auf den Titel im Graph gehen und dann Menupunkt „Share“.

zu spät .-)

Wenn du im Dashboard / einen Graphen auf den Titel klickst bekommst du das Menu für diesen Graphen angezeigt. Dort gibt es den Punkt „share“. Drauf klicken und den Link kopieren und in Symcon einfügen.
Möchtest du das komplette Dashboard einfügen, oben rechts auf Share klicken und Link kopieren.

Vielen Dank, gibt es eventuell auch noch die Möglichkeit nur den Graph anzeigen zu lassen ohne die Menüleisten von Grafana oben drüber?