poniedziałek, 14 sierpnia 2017

Influx, Grafana


Tym razem mała aktualizacja konfiguracji InfluxDB i Grafana w stosunku do pisanych na blogach http://malinowepi.pl/ oraz https://blog.jokielowie.com/

Słowem wstępu: na początku standardowe raportowanie w Domoticz wydaje się wystarczać, ale z czasem przekonujemy się, że ich sposób przechowywania nie jest zbyt szczęśliwy do dokładniejszych analiz: dane po dniu są uśredniane i pozostają na przykład z temperatury trzy informacje: średnia, minimum w danym dniu i maksimum. Aby mieć dostęp do ciekawszych analiz trzeba albo tworzyć osobne skrypty które będą kopiowały dane do osobnych tabel, albo posiłkować się właśnie InfluxDB i wbudowanymi w Domoticz mechanizmami.

Próbując odzwierciedlić opis na wspomnianych blogach 1:1 napotkałem u siebie problemy oraz różnice, dlatego pozwoliłem sobie stworzyć wpis aktualny na sierpień 2017 :)

Zaczynamy od instalacji InfluxDB. Ostatnia wersja do sprawdzenia zawsze na https://portal.influxdata.com/downloads

wget https://dl.influxdata.com/influxdb/releases/influxdb_1.3.2_armhf.deb
sudo dpkg -i influxdb_1.3.2_armhf.deb

sudo service influxdb start

I już działa.

Teraz wystarczy wpisać

influx

i później mamy albo opcję bardziej czasochłonną (instalacja Chronograf do obsługi baz), albo łatwiejszą, w zupełności wystarczającą. Poprzedni portal dostępny na porcie 8083 nie jest już wspierany.

CREATE DATABASE domoticz
CREATE USER domoticz WITH PASSWORD 'domoticz'

Następnie warto skonfigurować dla sprawdzenia chociaż jeden parametr do przesłania w Domoticz. Szczęśliwie, od oficjalnej wersji 3.8153, InfluxDB jest już wspierany wprost z menu, nie przez wysyłanie po http.





Aby upewnić się, że baza odbiera dane:

use domoticz
SHOW MEASUREMENTS

I tutaj już powinny się pokazać nasze miary: temperatura, status czy wilgotność.

Wychodzimy przez quit

Następnie Grafana. Niestety, na Raspberry Pi nie jest oficjalnie wspierana, dlatego trzeba się posiłkować https://github.com/fg2it/grafana-on-raspberry

Edit: Miałem problemy z pobraniem poprawnej wersji, dlatego dopisuję komentarz.

Pobrać możemy dwie wersje: dla Pi1 i Pi2,3.

Dla Pi1 znajdują się pod linkiem:
https://dl.bintray.com/fg2it/deb-rpi-1b/main/g/


Dla Pi2,3 tutaj:
https://dl.bintray.com/fg2it/deb/main/g/



Musicie pobrać link, który tam jest dostępny wraz z ostatnią wersją i odpowiednio wkleić poniżej:

wget https://dl.bintray.com/fg2it/deb-rpi-1b/main/g/grafana_4.6.2_armhf.deb

sudo apt-get install -y adduser libfontconfig

sudo dpkg -i grafana_4.6.2_armhf.deb

Zgodnie z sugestią instalatora dopisujemy:

sudo /bin/systemctl daemon-reload
sudo /bin/systemctl enable grafana-server

sudo /bin/systemctl start grafana-server

Na koniec podajemy parametry w Grafana, użytkownik admin, admin i możemy korzystać z Dashboardów. Grafana domyślnie instaluje się na porcie 3000!

15 komentarzy:

  1. Tak z ciekawości, na jakiej wersji domoticza/rasbiana pracujesz ? Próbuję zmusić data push do działania na domoticz 3.8153 / raspbian strech i bez powodzenia. Konfiguracja jak u Ciebie ale w logach nie ma śladu po jakiejkolwiek komunikacji.

    OdpowiedzUsuń
    Odpowiedzi
    1. Również 3.8153, Raspbian Jessie. Na pewno włączyłeś Check box Enabled na General Settings w Domoticz przy konfiguracji wysyłania do InfluxDB?

      Usuń
  2. Tak oczywiście - jest enabled, baza również nasłuchuje:
    pi@raspberrypi:~ $ sudo netstat -nap | grep inf
    tcp 0 0 127.0.0.1:8088 0.0.0.0:* LISTEN 388/influxd
    tcp6 0 0 :::8086 :::* LISTEN 388/influxd
    unix 3 [ ] STREAM CONNECTED 8851 388/influxd

    OdpowiedzUsuń
  3. Wszystko niby OK, grafana niby działa, ale przy próbie "wejścia" na grafanę z przeglądarki (http://IP_RPI:3000) pojawia się czarny ekran, w pasku adresu widzę dopisek /login, ale nic nie widać. Co może być nie tak?

    OdpowiedzUsuń
    Odpowiedzi
    1. Jakie Raspberry? Ja instalowałem na starej B+, do tego jeszcze z tego co widzę dość starą już wersję. Postaram się podnieść moją 4.6 do 5.0 i sprawdzić, czy będą problemy.

      Usuń
  4. U mnie RPi3, instalowałem i 4.6.2 i najnowszą wersję 5.0.4 i na obu to samo.

    OdpowiedzUsuń
    Odpowiedzi
    1. To takie głupie pytanie w takim razie - dlaczego jesteś pewien, że działa :) ?

      Usuń
    2. https://imgur.com/a/xBbjICu

      Usuń
  5. Ten komentarz został usunięty przez autora.

    OdpowiedzUsuń
  6. Cześć,

    A jak z żywotnością karty przy takim rozwiązaniu? Gdzieś czytałem, że przy takim ruchu domoticz -> influxdb + grafana, karta może szybko i niespodziewanie umrzeć.

    OdpowiedzUsuń
    Odpowiedzi
    1. Cześć. Jak na razie, od kilku miesięcy, mam postawioną bazę Influx wraz z Max2Play (system do multiroom) i nie było żadnych problemów. Docelowo planuję przenieść wszystko na aktualną instalację Domoticz na SSD, bo tutaj się zgadzam - karta często jest najsłabszym punktem tego rozwiązania.

      Usuń
  7. Ten wpis jest bardzo ciekawy

    OdpowiedzUsuń
  8. Krok po kroku wszystko zostało fajnie opisane

    OdpowiedzUsuń