Grafana Dashboard - Harveg/hiag GitHub Wiki
Das Dashboard dient zur Visualisierung aller Daten rund um die Produktion und zur Analyse des Analgezustandes.
Alle zuvor gespeicherten Daten können in einem Panel mit einer Query-Abfrage aus der Datenbank angezeigt werden. Hierfür ist es wichtig die Persisiterung zuvor korrekt zu konfigurieren siehe Daten Persistierung
Datenfluss: Item --> Persistierung Y/N --> InfluxDB --> Grafana Query Abfrage
Neben den Daten welche zuvor persistiert wurden, können auch weitere Daten mittels InfluxCB client direkt in die Datenbank abgelegt werden. Hierfür wird eine zusätzlicher Dienst auf dem Gerät wo sich die Daten befinden benötigt, welcher das Auslesen und verarbeiten der Gicom-Daten übernimmt. Dieser Dienst wurde im gesonderten repositorie hiag_watchdog_win dokumentiert.
Grafana Dashboard
Übersicht
Ein Dashboard innerhalb von Grafana stellt eine zusammenfassende Einheit für die Organisation von Diagrammen bzw. Panels dar. Innerhalb eines Dashboards wird beispielsweise die Zeitspanne definiert und alle untergeordneten Diagramme/Panels teilen sich dann den eingestellten Datumsbereich.
Das Benutzerinterface erklärt
Im folgenden Screenshot siehst du ein einfaches Grafana Dashboard mit einem simplen Graph Panel und der Darstellung der Werte für die Temperatur und die Luftfeuchtigkeit:
- Der Titel des Dashboards. Dieser kann in den Einstellungen zum Dashboard (Punkt 6) verändert werden oder wenn das Dashboard gespeichert wird
- Favorisieren. Hier kannst du dein Dashboard als Favorit markieren. Favorisierte Dashboards werden auf der Startseite von Grafana an erster Stelle angezeigt
- Sharing, Snapshot und Export Funktionen
- Panel hinzufügen
- Dashboard speichern
- Dashboard Einstellungen wie Name, Ordner- Zugehörigkeit und der Konfiguration der Zeiten für die automatische Aktualisierung
- Verändern der Ansichtsmethode. Hier können andere Komponenten wie beispielsweise die Seitenleiste ausgeblendet werden
- Zeitauswahl DropDown. Hier kann eine relative oder absolute Zeitspanne eingestellt werden
- Zoom
- Manuelles Aktualisieren des Dashboards
- Festlegen des Intervalls für die automatische Aktualisierung des Dashboards
Sharing, Snapshot und Export
Mit der Sharing Funktion kannst du weiteren Personen einfach den Link deines Dashboards senden. Beachte jedoch, dass dafür ein Login für Grafana benötigt wird.
Snapshot
Durch einen Snapshot eines Grafana Dashboards kann eine interaktive Version eines Dashboards öffentlich geteilt werden. Hierbei werden sensible Daten entfernt und es bleiben nur die Kernelemente, die für das Betrachten des Dashboards benötigt werden, erhalten. Vorsicht: Jeder mit dem Link kann die Daten des Dashboards betrachten!
Hier kann der Name, ein Verfallsdatum und eine Zeitüberschreitung für das Laden der Daten festgelegt werden.
Export
Mit der Exportfunktion kannst du einfach und schnell fertig konfigurierte Dashboards exportieren. Diese können dann später beim Erstellen eines neuen Dashboards als Grundlage verwendet werden.
Hast du also zum Beispiel ein Dashboard für die Überwachung der Jalousien im Raum A angelegt, kannst du die Einstellungen und Panels einfach für Raum B in deinem Loxone Smarthome übernehmen. Hierbei müssen lediglich die Diagramme bzw. Panels an die korrekten Sensordaten angepasst werden.
Einstellen der Zeitspanne eines Dashboards
Wie unter Punkt 8 zu sehen kann global auf einem Dashboard die Zeitspanne für die zu betrachtenden Diagramme definiert werden. Hier können sowohl relative als auch absolute Werte angegeben werden. Die folgenden Einheiten werden dabei unterstützt: s (Sekunden), m (Minuten), h (Stunden), d (Tage), w (Wochen), M (Monate), y (Jahre) und now (Jetzt).
Mit einem Minus kann in der Zeit zurückgesprungen und mit einem Plus, die Zeit in die Zukunft bewegt werden:
BEISPIEL RELATIVE ZEITSPANNE | VON: | BIS: |
---|---|---|
Letzte 5 Minuten | now-5m | now |
Aktueller Tag | now/d | now |
Diese Woche | now/w | now |
Letzter Monat | now-1M/M | now-1M/M |
Außerdem erlaubt das DropDown für die Zeitauswahl auch vordefinierte Zeitspannen. Diese können mit einem einfachen Klick ausgewählt und aktiviert werden.
Für die Definition einer absoluten Zeitspanne, müssen einfach die Felder Von (From) und Bis (To) mit einem Wert gefüllt werden. Durch anklicken eines der beiden Felder öffnet sich ein Fenster für die Auswahl des jeweiligen Datum:
Grafana Panels einrichten
Zu guter Letzt fügt man nun ein Panel (Graphen) zu unserem Dashboard hinzu. Hier gibt es sehr unterschiedliche Varianten. Um z.B. einen Temperaturverlauf darzustellen, wird das Element “Graph” eingefügt und klicken dazu auf gleichnamiges Icon. Um den aktuell leeren Graph mit Leben zu füllen klickt man einmal in der Mitte auf den Titel bzw. “Panel Title”.
Panels Schritt für Schritt Anleitung
Dadurch öffnet sich ein Menü. Hier klickt man nun auf “Edit”. Im Tab “Metrics” sollte man nun in der Lage sein die Items auszuwählen die man in der ifluxdb.persist Konfiguration hinterlegt hat.
Die Abfrage- und Aggregierungsmethoden in InfluxDB sind sehr komplex und werden hier nicht weiter behandelt. Standartmässig belassen wir alle voreingestellten Parameter wie sie sind und wählen lediglich die Metrik/Item die wir im Graph sehen möchten aus. Im Beispiel Bild unten ist das die “Carport Temperatur”. Danach speichert man das Dashboard durch einen Click auf die kleine Diskette ganz oben(“save Dashboard”) und gibt dem Dashboard einen Namen (z.B. Temperaturen). In dieses Dashboard kann man dann später auch noch weitere Elemente hinzufügen. Nachdem man das Dashboard gespeichert hat sieht man die Graphen mit den vorhandenen Datenpunketen. Für den Fall dass man allerdings keine Werte/Linien sieht probiert bitte folgendes aus: Editiert den Graphen durch einen Klick auf den Titel und dann “Edit”. Wählt das Tab “Display” aus, setzt für die Einstellung “Null value” den Wert “connected” und speichert das Ganze. Jetzt sollte man einen Wert sehen.
Filter mit Variablen
Um die Anzeige der Graphen auf die jeweiligen Räume respektive Batches einzustellen werden sogennante Variablen ergänzt welche als Filter für Räume oder der LOT-NR dienen. Diese Filter Einstellung lässt sich oben Links am Dashboard anpassen und es werden nur die jeweils die Daten der ausgewählten Räume bzw. LOT-NR angezeigt. Um den Filter zurückzusetzen muss ALL gewählt werden. Es ist auch möglich eine Mehrfachauswahl der gewünschten Variablen zu treffen, einfach die Räume resp. LOT-NR nacheinander auswählen. Verfügbare Filter:
Room LotNr measurement_T measurement_H
WICHTIG: Filter sind nur für die Daten welche zuvor vom Dienst aufbereitet wurden aktiv, die Shellys können nicht gefiltert werden
Auswertungszeiträume
In der Dashboard Ansicht sieht man ganz oben rechts den aktuellen Auswertungszeitraum(z.B. “last 3 hours”). Durch einen Click darauf öffnet sich ein Auswahlmenü. Hier kann man z.B. direkt die letzten 30 Tage als Zeitraum wählen. Die Zeitzone entspricht UTC, da für alle Daten Quellen (Rohdaten) die selbe Zeitzone definiert werden muss, sind Änderungen der Zeitzone im Grafana Dashboard zu vermeiden. Die Aktualisierung des Dashboards kann oben rechts (neben refresh button) festgelegt werden. Standartmässig 15min
Alerts einrichten
Bei der Symbolleiste links die Glocke für Alerting, ist unter Punkt Alert list, die Anzeige der Alarme eines Dashboards möglich. Die Liste zeigt alle konfigurierten Alarme und deren Status an.
Ein aktiver Alarm wird ausgelöst sobald die Daten aus der Gicom-Datenbank den festgelegten Grenzwert übersteigt un zudem auch eine Verbindung ins Internet besteht. Sollte die Internetverbindung während der Alarmierung unterbrochen sein, so wird auch keine Meldung abgesetzt. Die Meldung wird (sofern der Alarm aktiv) alle 15min erneut abgesetzt. Eine Analyse der Gicom Daten ist nur möglich wenn der Computer die aktuellen Daten korrekt aufzeichnet.
Wir übernehmen keine Gewährleistung der Alarmierung auf eines beliebigen Anlagenzustandes und haben keine Garantie, dass die Alarme rechtzeitig ausgelöst werden.
WICHTIG! Der mit den Alarmen überwachte Anlagenzustand soll nicht für personenkritische Zwecke verwendet werden da keine Garantie zu dessen Funktionalität gegeben wird.
Channels einrichten
Grafana unterstützt neben E-Mails eine Vielzahl von populären Messengern wie unter anderem Slack, Discord, Hangout Chart oder Mircosoft Teams. Im Standart Setup nutzen wir den Messenger "Slack" – hauptsächlich aus dem Grund, weil der Autor ihn als primären Messenger verwendet und die Konfiguration von Bots recht einfach ausfällt.
Zunächst müssen Sie hierfür in Grafana einen Notification Channel einrichten. Selektieren Sie links in der Symbolleiste die Glocke für Alerting, wählen Sie Notification channels aus und klicken Sie auf Add channel. Unter Type geben Sie an, wohin Grafana die Alert Notifications schicken soll. Sie können sich Alert Notifications beispielsweise an eine E-Mail-Adresse oder einen Slack Channel schicken lassen. Füllen Sie die Felder für Ihren Notification Channel aus, und klicken Sie auf Send Test. Wenn Grafana erfolgreich eine Test Notification an Ihren Notification Channel senden konnte, wird Ihnen die Meldung "Test notification sent" angezeigt. Klicken Sie anschließend auf Save, um die Einrichtung Ihres Notification Channels in Grafana zu speichern.
Im nächsten Schritt definieren Sie Alert Rules in Ihrem Dashboard. Klicken Sie hierzu jeweils auf den kleinen Pfeil rechts neben dem Diagrammnamen und wählen Sie Edit. Im Register Alert direkt unter dem Diagramm klicken Sie auf Create Alert. Vergeben Sie unter Rule | Name einen Namen für Ihre Alert Rule. Unter Conditions selektieren Sie eine Ihrer zuvor erstellten Queries und definieren, unter welchen Bedingungen eine Alert Notification gesendet werden soll. Im Abschnitt Notifications wählen Sie unter Send to den zuvor eingerichteten Notification Channel aus und tragen unter Message den Nachrichtentext ein, den Ihre Alert Notification enthalten soll. Die erstellte Alert Rule können Sie testen, indem sie ganz unten auf Test rule klicken. Grafana zeigt Ihnen nun in einem separaten Fenster das Testergebnis an, d. h. ob die Regel gefeuert hat und welcher Wert für Ihre Query zurückgeliefert worden ist. Abschließend klicken Sie ganz oben rechts auf Save, um Ihre Alert Rule abzuspeichern.
https://community.openhab.org/t/tutorial-grafana-rendering-on-raspberry-pi/71777