Table of Contents Historique avec InfluxDb et Grafana Activer les services Configurer calaos-server Activer l'envoi de donnée dans calaos_installer Configurer Grafana Datasource Dashboard Historique avec InfluxDb et Grafana Depuis la version de juillet 2020, calaos en v3 peut envoyer les données des IO dans une base InfluxDb et permettre d'afficher des courbes dans un outil tel que Grafana. A partir de la version `calaos-os-intel-corei7-64-v3.0-alpha6-13-gac1afde-2020-07-02` de calaos-os, InfluxDb et Grafana sont intégré à l'image. En suivant ce tutoriel il vous sera possible de les activer et de configurer le tout sur votre installation. Activer les services En SSH sur le serveur il faut activer les services correspondants: root@intel-corei7-64:~# systemctl enable influxdb --now root@intel-corei7-64:~# systemctl enable grafana --now Verifier si les services sont bien lancés: root@intel-corei7-64:~# systemctl status influxdb ● influxdb.service - InfluxDB is an open-source, distributed, time series database Loaded: loaded (/lib/systemd/system/influxdb.service; disabled; vendor preset: enabled) Active: active (running) since Fri 2020-07-10 07:28:07 UTC; 1s ago Docs: https://docs.influxdata.com/influxdb/ Main PID: 891 (influxd) Tasks: 10 (limit: 2363) Memory: 70.5M CGroup: /system.slice/influxdb.service └─891 /usr/bin/influxd -config /etc/influxdb/influxdb.conf root@intel-corei7-64:~# systemctl status grafana ● grafana.service - Grafana instance Loaded: loaded (/lib/systemd/system/grafana.service; disabled; vendor preset: enabled) Active: active (running) since Fri 2020-07-10 07:30:45 UTC; 1s ago Docs: http://docs.grafana.org Main PID: 974 (grafana-server) Tasks: 10 (limit: 2363) Memory: 33.3M CGroup: /system.slice/grafana.service └─974 /usr/bin/grafana-server --config=/etc/grafana/grafana.ini --pidfile=/var/run/grafana/grafana-server.pid --packaging=deb cfg:default.paths.logs=/var/log/grafana cfg:default.paths.data=/var/lib/grafana cfg:default.paths.plugins=/var/lib/grafana/plugins cf> Vous devez avoir Active: active (running) Configurer calaos-server Pour que Calaos puisse envoyer les données sur InfluxDb il faut activer la fonction: root@intel-corei7-64:~# calaos_config set influxdb_enabled true root@intel-corei7-64:~# calaos_config set influxdb_host 127.0.0.1 Il est possible d'utiliser un serveur InfluxDb externe en utilisant les paramètres: root@intel-corei7-64:~# calaos_config set influxdb_port 8086 root@intel-corei7-64:~# calaos_config set influxdb_database "xxxx" #par defaut la database se nomme "calaos" Puis relancez calaos-server: root@intel-corei7-64:~# systemctl restart calaos-server Activer l'envoi de donnée dans calaos_installer Par défaut aucune donnée n'est envoyé a influxdb. Il faut pour cela activer la propriété logged des IO qui vont envoyer leur données. Exemple avec une sonde de température: Il faudra attendre quelques minutes/heures pour avoir un nombre suffisant de données dans InfluxDb. Configurer Grafana Grafana est accessible sur http://ip_de_votre_serveur:3000/ La premiere ouverture de cette page demande a changer le mot de passe admin. L'utilisateur par défaut est: admin, mot de passe: admin Datasource Il faut ensuite aller dans “Add new Data Source” pour ajouter la connection a InfluxDb Les paramètres à changer sont: URL: http://localhost:8086 Database: calaos Puir valider avec “Save & Test”, si tout est en vert c'est que c'est bon. Dashboard Maintenant on peut ajouter un nouveau “Dashboard” qui est une visualisation avec des Panels. On ajoute un Panel en cliquant sur l'icone d'ajout tout en haut (+). Il faut choisir un panel de type “Graph”. Puis y mettre des “Query”. Chaque Query représente une ligne (de temperature par exemple) sur le graphique. On peut ajouter autant de Query qu'on souhaite. Exempe pour une sonde de temperature dans une pièce: Bien entendu, on peut se créer des Dashboard personnalisé avec autant de Query que l'on souhaite, affichant des données provenants d'autres IO que des températures. Tous les type d'IO sont supportés (aussi bien les volets que les interrupteurs). On peut par exemple afficher une valeur avec le nombre de fois qu'une lumière a été allumé dans une journée. Je vous laisse fouiller Internet pour trouver des informations sur le fonctionnement de Grafana et des Query InfluxDb.