Domoticz-data weergeven in Grafana-grafieken

In eerdere artikelen hebben we uitgelegd hoe je een InfluxDB database aanmaakt en hoe je Grafana installeert op een Pi. Nu is het tijd om alles aan elkaar te koppelen, zodat de data die Domoticz verzamelt grafische weergegeven kan worden in Grafana middels grafieken en bars.

Benodigdheden

InfluxDB koppelen aan Grafana

We gaan ervan uit dat je onderstaand scherm zit (mocht dat niet zo zijn ga dan even terug naar Grafana installeren op een Pi).

Grafana

Klik op Add data source en vervolgens klik je op InfluxDB:

Vul nu onderstaande velden in:

  • URL (ip-adres inclusief poortnummer waar je InfluxDB geïnstalleerd hebt)
  • Database (naam van de database)
  • User (gebruikersnaam van de database)
  • Password (wachtwoord van de gebruiker van de database
  • HTTP Methode: GET

Klik vervolgens op Save & Test.

 

Domoticz koppelen aan InfluxDB

Zojuist hebben we de InfluxDB database gekoppeld aan Grafana. Echter, de InfluxDB database is nog helemaal leeg. We gaan er nu voor zorgen dat Domoticz de waarden naar InfluxDB stuurt. Ga nu in Domoticz naar Setup > More Options > Data push > InfluxDB.

Vul eerst bij General settings de bonodigde velden in (dit zijn dezelfde waarden als je eerder ook in Grafana ingevoerd hebt). Vervolgens kun je onder Edit link aangeven welke data je naar InfluxDB wilt laten sturen. Vergeet niet op Add en Save te klikken!

Domoticz zal nu continu data naar de database van InfluxDB sturen, zodat je deze data in Grafana kunt weergeven.

Ga nu terug naar Grafana en klik op het icoontje van Add panel en vervolgens op Add Query.

Vanaf nu is het ‘creatief’ klikken ;). In onderstaand voorbeeld heb ik 3 devices (temperatuur slaapkamer / binnen / badkamer) toegevoegd aan de query. Je ziet dat de waarden van 3 apparaten keurig worden weergegeven in één grafiek:

9 gedachten over “Domoticz-data weergeven in Grafana-grafieken

  • 2 maart 2020 om 08:50
    Permalink

    Super bedankt voor deze geweldige uitleg ! tot nu toe veel gehad aan jou instructies.

    Alleen nog wel een vraagje ik heb een P1 USB meter kabel en in domoticz geeft deze mooie cijfers kwa verbruik.
    Maar wat ik ook doe in grafana krijg ik maar 1 type gas-usage en dat is een getal dat ik geheel niet kan rijmen aan mijn verbruik?
    Heb jij enig idee hoe ik mijn huidige gas verbruik voor 1 dag in grafana kan krijgen en dat hij netjes iedere dag op 0 begint?

    Beantwoorden
    • 4 maart 2020 om 19:11
      Permalink

      SELECT derivative(mean(“value”), 1h) FROM “Gas-usage” WHERE (“idx” = ‘221’) AND $timeFilter GROUP BY time(1h) fill(previous)

      Beantwoorden
  • 16 maart 2020 om 17:12
    Permalink

    Ok, ook deze instructie werkt bij mij, nl het pushen van data vanuit Domoticz naar de Influx Db. In zowel de log van Domoticz (data eruit) als op de journal log van de Raspberry Pi (binnenkomende data) wordt bevestigd dat er data aan het stromen is.

    Ik heb moeite met maken van de queries, ofwel om de juiste data te tonen. Zou je hierover nog een artikel kunnen schrijven? Bijvoorbeeld over het energie verbruik, het gas verbruik. Ik zou graag de granulariteit verfijnder willen zien. Ook ben ik benieuwd of je de stroom en gas kosten kan berekenen.

    Beantwoorden
    • 6 april 2020 om 11:37
      Permalink

      Ik merk ook dat ik moeite heb met de queries, en artikel hierover zou inderdaad heel erg welkom zijn 🙂

      Verder is alles heel helder uitgelegd, dank daarvoor 🙂

      Beantwoorden
  • 17 april 2020 om 13:40
    Permalink

    SELECT derivative(mean(“value”), 1h) FROM “Gas-usage” WHERE (“idx” = ‘221’) AND $timeFilter GROUP BY time(1h) fill(previous)

    Als ik deze bij mij er in zet krijg ik geen meting zoals bedoeld. Uiteraard het idx aangepast.

    Voor de duidelijkheid. Je kunt de teks edit mode aanzetten en deze select, from, where daar plaatsten.

    Beantwoorden
  • 13 juni 2020 om 16:06
    Permalink

    Misschien ligt het aan mij, maar waarom een tussenstap via influx?
    Grafana kan toch ook overweg met sql-lite (mysql), aan het bestand te zien is de database van Domoticz een sql-lite database.

    René

    Beantwoorden
    • 15 juli 2020 om 13:32
      Permalink

      Omdat influxdb een database is die veel sneller is en werkt dan sql-lite (mysql)

      Beantwoorden
  • 14 januari 2021 om 17:17
    Permalink

    Ik ben erg blij met de ombi van domoticz, influxdb en grafana. Waar ik tegen aan loop:
    Ik lees de P1 slimme meter uit en heb al die data in domoticz en domotuics stuurt het door naar grafana. Het lukt me in grafana niet om een dag meter te krijgen van elektra verbruik die gelijk loopt met de dag meter in domoticz… Het loopt teveel daarop achter.

    Ik heb geprobeerd met derivative functie, difference functie. Relative time now/d etc. Ik kom er niet uit. Heb jij de juist querie om in de lopende dag het elektra verbruik in kWh te tonen in Grafana?

    Query die ik nu heb:

    SELECT derivative(last(“value”), 1d) / 1000 FROM “Usage” WHERE (“name” = ‘PanaTotaal’) AND $timeFilter GROUP BY time(1d) fill(none)

    Beantwoorden

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.