Grafana: различия между версиями

Строка 275: Строка 275:
sudo systemctl edit --force --full mqtt_to_influxdb.service
sudo systemctl edit --force --full mqtt_to_influxdb.service
</syntaxhighlight>
</syntaxhighlight>
# В открывшийся редактор вставьте строки:
# В открывшийся редактор вставьте строки, в которых замените '''test''' и '''wbpassword''' на логин и пароль от MQTT-брокера.:
#:<syntaxhighlight lang="bash">
#:<syntaxhighlight lang="bash">
[Unit]
[Unit]
Строка 293: Строка 293:
WantedBy=multi-user.target
WantedBy=multi-user.target
</syntaxhighlight>
</syntaxhighlight>
#: Замените в тексте выше '''test''' и '''wbpassword''' на логин и пароль от MQTT-брокера.
#: Если MQTT-брокер стоит на отдельном от Grafana сервере, укажите его IP-адрес вместо '''localhost'''.
# Сохраните файл, для этого нажмите клавиши <kbd>Ctrl</kbd>+<kbd>O</kbd>, затем <kbd>Enter</kbd> и <kbd>Ctrl</kbd>+<kbd>X</kbd>.
# Сохраните файл, для этого нажмите клавиши <kbd>Ctrl</kbd>+<kbd>O</kbd>, затем <kbd>Enter</kbd> и <kbd>Ctrl</kbd>+<kbd>X</kbd>.
# Настройте автозапуск и запустите сервис:
# Настройте автозапуск и запустите сервис:
Строка 300: Строка 300:
</syntaxhighlight>
</syntaxhighlight>
# Проверьте статус сервиса:
# Проверьте статус сервиса:
#:<syntaxhighlight lang="bash">
#:<syntaxhighlight lang="console" highlight="4" >
systemctl status mqtt_to_influxdb.service
$ systemctl status mqtt_to_influxdb.service
● mqtt_to_influxdb.service - Mqtt to Influxdb script
    Loaded: loaded (/etc/systemd/system/mqtt_to_influxdb.service; enabled; vendor preset: enabled)
    Active: active (running) since Thu 2021-11-25 21:38:32 +04; 4s ago
  Main PID: 5440 (python3)
      Tasks: 2 (limit: 4663)
    Memory: 17.1M
        CPU: 206ms
    CGroup: /system.slice/mqtt_to_influxdb.service
            └─5440 /usr/bin/python3 /usr/local/bin/mqtt_to_influxdb.py -h localhost /# -u test -P wbpassword
</syntaxhighlight>
</syntaxhighlight>
#: Если в выводе команды есть строчка <code>Active: active (running)</code> — сервис создан и настроен верно.


Проверяем, записывается ли что-то в influxDB. Для этого выполняем на сервере
Теперь проверьте, записывается ли что-то в influxDB. Для этого выполните на сервере команду:
<syntaxhighlight lang="bash">
:<syntaxhighlight lang="console">
influx -database 'mqtt_data' -execute 'SELECT * FROM /.*/ LIMIT 20'
$ influx -database 'mqtt_data' -execute 'SELECT * FROM /.*/ LIMIT 10'
name: mqtt_data
time                channel                client  value_f
----                -------                ------  -------
1637861917526049562 hwmon/CPU Temperature  AWQBNTYP 67.516
1637861917615599448 hwmon/Board Temperature AWQBNTYP 35.875
1637861927519510484 hwmon/CPU Temperature  AWQBNTYP 66.917
1637861927586856127 hwmon/Board Temperature AWQBNTYP 35.875
1637861937592362349 hwmon/Board Temperature AWQBNTYP 35.875
1637861937592362349 hwmon/CPU Temperature  AWQBNTYP 66.917
1637861947498698295 hwmon/CPU Temperature  AWQBNTYP 67.516
1637861947570297085 hwmon/Board Temperature AWQBNTYP 35.875
1637861957523243600 hwmon/CPU Temperature  AWQBNTYP 66.917
1637861957593339293 hwmon/Board Temperature AWQBNTYP 35.875
</syntaxhighlight>
</syntaxhighlight>
если запрос не пустой — в базу данных что-то уже записывается. То есть — работает.
:если вывод команды не пустой — в базу данных что-то уже записывается, а значит — работает.


=== Настройка в Grafana источника данных ===
=== Настройка в Grafana источника данных ===