16 885
правок
Строка 258: | Строка 258: | ||
=== Скрипт на сервере Grafana === | === Скрипт на сервере Grafana === | ||
Теперь скачаем на сервер с Grafana скрипт, который будет отправлять данные из MQTT-брокера в базу данных Influx: | |||
<syntaxhighlight lang="bash"> | # Перейдите на сервере в папку <code>/usr/local/bin</code> | ||
cd /usr/local/bin | #:<syntaxhighlight lang="bash"> | ||
cd /usr/local/bin | |||
</syntaxhighlight> | </syntaxhighlight> | ||
# Скачайте в эту папку скрипт: | |||
#:<syntaxhighlight lang="bash"> | |||
<syntaxhighlight lang="bash"> | sudo wget https://raw.githubusercontent.com/wirenboard/wbmqtt2influx/master/mqtt_to_influxdb.py | ||
systemctl edit --force --full mqtt_to_influxdb.service | </syntaxhighlight> | ||
# Разрешите выполнение скрипта командой: | |||
#:<syntaxhighlight lang="bash"> | |||
sudo chmod +x mqtt_to_influxdb.py | |||
</syntaxhighlight> | |||
# Создайте сервис, который будет автоматически запускать скрипт: | |||
#:<syntaxhighlight lang="bash"> | |||
sudo systemctl edit --force --full mqtt_to_influxdb.service | |||
</syntaxhighlight> | </syntaxhighlight> | ||
# В открывшийся редактор вставьте строки: | |||
#:<syntaxhighlight lang="bash"> | |||
В редактор | |||
<syntaxhighlight lang="bash"> | |||
[Unit] | [Unit] | ||
Description=Mqtt to Influxdb script | Description=Mqtt to Influxdb script | ||
Строка 279: | Строка 285: | ||
Type=idle | Type=idle | ||
User=mosquitto | User=mosquitto | ||
ExecStart=/usr/bin/python3 /usr/local/bin/mqtt_to_influxdb.py -h localhost "/#" -u "test" -P " | ExecStart=/usr/bin/python3 /usr/local/bin/mqtt_to_influxdb.py -h localhost "/#" -u "test" -P "wbpassword" | ||
Restart=always | Restart=always | ||
TimeoutStartSec=10 | TimeoutStartSec=10 | ||
Строка 286: | Строка 292: | ||
[Install] | [Install] | ||
WantedBy=multi-user.target | WantedBy=multi-user.target | ||
</syntaxhighlight> | </syntaxhighlight> | ||
#: Замените в тексте выше '''test''' и '''wbpassword''' на логин и пароль от MQTT-брокера. | |||
# Сохраните файл, для этого нажмите клавиши <kbd>Ctrl</kbd>+<kbd>O</kbd>, затем <kbd>Enter</kbd> и <kbd>Ctrl</kbd>+<kbd>X</kbd>. | |||
# Настройте автозапуск и запустите сервис: | |||
<syntaxhighlight lang="bash"> | #:<syntaxhighlight lang="bash"> | ||
systemctl enable mqtt_to_influxdb.service && systemctl start mqtt_to_influxdb.service | sudo systemctl enable mqtt_to_influxdb.service && sudo systemctl start mqtt_to_influxdb.service | ||
</syntaxhighlight> | |||
# Проверьте статус сервиса: | |||
#:<syntaxhighlight lang="bash"> | |||
systemctl status mqtt_to_influxdb.service | |||
</syntaxhighlight> | </syntaxhighlight> | ||