Wirenboard 7.4 проработал несколько месяцев, во время очередного обновления отвалился MQTT: перестал работать веб-интерфейс и облачный сервис Wirenboard. Остался доступ через tailscale.
Не удалось подключиться к ws://100.119.122.94/mqtt
Если не останавливать MQTT брокер, то контроллер перезагружается.
Welcome to Wiren Board 7.4.3 (s/n A5BDCBII), release wb-2407 (as stable)
Linux wirenboard-A5BDCBII 5.10.35-wb169 #1 SMP Wed Aug 7 14:39:59 UTC 2024 armv7l GNU/Linux
System load: 3.27 1.06 0.37 Up time: 1 min
Memory usage: 13% of 997M Usage of /: 39% of 2.0G /mnt/data: 23% of 4.9G
Last login: Tue Sep 3 05:44:22 2024 from 100.113.178.27
root@wirenboard-A5BDCBII:~# systemctl stop mosquitto
root@wirenboard-A5BDCBII:~# systemctl status mosquitto
● mosquitto.service - Mosquitto MQTT Broker
Loaded: loaded (/lib/systemd/system/mosquitto.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/mosquitto.service.d
└─override.conf
Active: activating (start) since Tue 2024-09-03 05:56:08 UTC; 3s ago
Docs: man:mosquitto.conf(5)
man:mosquitto(8)
Process: 19898 ExecStartPre=/bin/mkdir -m 740 -p /var/log/mosquitto (code=exited, status=0/SUCCESS)
Process: 19902 ExecStartPre=/bin/chown mosquitto /var/log/mosquitto (code=exited, status=0/SUCCESS)
Process: 19904 ExecStartPre=/bin/mkdir -m 740 -p /run/mosquitto (code=exited, status=0/SUCCESS)
Process: 19906 ExecStartPre=/bin/chown mosquitto /run/mosquitto (code=exited, status=0/SUCCESS)
Process: 19908 ExecStartPre=/bin/chown mosquitto:mosquitto /run/mosquitto (code=exited, status=0/SUCCESS)
Process: 19911 ExecStartPre=/bin/chmod g+x /run/mosquitto (code=exited, status=0/SUCCESS)
Main PID: 19913 (mosquitto)
Tasks: 1 (limit: 2354)
Memory: 102.6M
CPU: 3.441s
CGroup: /system.slice/mosquitto.service
└─19913 /usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf
Sep 03 05:56:08 wirenboard-A5BDCBII systemd[1]: Starting Mosquitto MQTT Broker...
Sep 03 05:56:08 wirenboard-A5BDCBII mosquitto[19913]: 1725342968: Loading config file /usr/share/wb-configs/mosquitto/30limits.conf
Sep 03 05:56:08 wirenboard-A5BDCBII mosquitto[19913]: 1725342968: Loading config file /etc/mosquitto/conf.d/00default_listener.conf
Sep 03 05:56:08 wirenboard-A5BDCBII mosquitto[19913]: 1725342968: Loading config file /etc/mosquitto/conf.d/10listeners.conf
Sep 03 05:56:08 wirenboard-A5BDCBII mosquitto[19913]: 1725342968: Loading config file /etc/mosquitto/conf.d/20bridges.conf
Sep 03 05:56:12 wirenboard-A5BDCBII mosquitto[19913]: 1725342968: Error: Out of memory.
Sep 03 05:56:12 wirenboard-A5BDCBII mosquitto[19913]: 1725342968: Error: Couldn't open database.
Sep 03 05:56:12 wirenboard-A5BDCBII systemd[1]: mosquitto.service: Main process exited, code=exited, status=1/FAILURE
Sep 03 05:56:12 wirenboard-A5BDCBII systemd[1]: mosquitto.service: Failed with result 'exit-code'.
Sep 03 05:56:12 wirenboard-A5BDCBII systemd[1]: Failed to start Mosquitto MQTT Broker.
Sep 03 05:56:12 wirenboard-A5BDCBII systemd[1]: mosquitto.service: Consumed 3.853s CPU time.
Sep 03 05:56:12 wirenboard-A5BDCBII systemd[1]: mosquitto.service: Scheduled restart job, restart counter is at 19.
Sep 03 05:56:12 wirenboard-A5BDCBII systemd[1]: Stopped Mosquitto MQTT Broker.
Sep 03 05:56:12 wirenboard-A5BDCBII systemd[1]: mosquitto.service: Consumed 3.853s CPU time.
Sep 03 05:56:12 wirenboard-A5BDCBII systemd[1]: Starting Mosquitto MQTT Broker...
root@wirenboard-A5BDCBII:~#
root@wirenboard-A5BDCBII:~# systemctl restart mosquitto
Job for mosquitto.service failed because the control process exited with error code.
See "systemctl status mosquitto.service" and "journalctl -xe" for details.
root@wirenboard-A5BDCBII:~# systemctl status mosquitto
● mosquitto.service - Mosquitto MQTT Broker
Loaded: loaded (/lib/systemd/system/mosquitto.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/mosquitto.service.d
└─override.conf
Active: activating (start) since Tue 2024-09-03 06:05:22 UTC; 676ms ago
Docs: man:mosquitto.conf(5)
man:mosquitto(8)
Process: 18286 ExecStartPre=/bin/mkdir -m 740 -p /var/log/mosquitto (code=exited, status=0/SUCCESS)
Process: 18287 ExecStartPre=/bin/chown mosquitto /var/log/mosquitto (code=exited, status=0/SUCCESS)
Process: 18291 ExecStartPre=/bin/mkdir -m 740 -p /run/mosquitto (code=exited, status=0/SUCCESS)
Process: 18295 ExecStartPre=/bin/chown mosquitto /run/mosquitto (code=exited, status=0/SUCCESS)
Process: 18297 ExecStartPre=/bin/chown mosquitto:mosquitto /run/mosquitto (code=exited, status=0/SUCCESS)
Process: 18300 ExecStartPre=/bin/chmod g+x /run/mosquitto (code=exited, status=0/SUCCESS)
Main PID: 18301 (mosquitto)
Tasks: 1 (limit: 2354)
Memory: 5.1M
CPU: 288ms
CGroup: /system.slice/mosquitto.service
└─18301 /usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf
Sep 03 06:05:22 wirenboard-A5BDCBII systemd[1]: Starting Mosquitto MQTT Broker...
Sep 03 06:05:22 wirenboard-A5BDCBII mosquitto[18301]: 1725343522: Loading config file /usr/share/wb-configs/mosquitto/30limits.conf
Sep 03 06:05:22 wirenboard-A5BDCBII mosquitto[18301]: 1725343522: Loading config file /etc/mosquitto/conf.d/00default_listener.conf
Sep 03 06:05:22 wirenboard-A5BDCBII mosquitto[18301]: 1725343522: Loading config file /etc/mosquitto/conf.d/10listeners.conf
Sep 03 06:05:22 wirenboard-A5BDCBII mosquitto[18301]: 1725343522: Loading config file /etc/mosquitto/conf.d/20bridges.conf
root@wirenboard-A5BDCBII:
Здравствуйте. Мы вам поможем, но перед этим надо чуть больше информации.
Пришлите, пожалуйста:
- Вывод команды
du -h /var/lib/mosquitto/mosquitto.db
- Сам файл
/var/lib/mosquitto/mosquitto.db
. - Диагностический архив, можно выгрузить в консоли командой
wb-diag-collect diag
, архив будет лежать в текущей папке, по умолчанию в /root - Полный лог mqtt-брокера, выгрузить можно командой
journalctl -u mosquitto -e >> mosquitto.txt
, файл будет сохранён в текущую папку, по умолчанию в /root. - Конфиг моста mqtt-брокера, если настраивали. Затрите в нём информацию о логине/пароле, если она есть.
Как забрать файлы с контроллера Просмотр файлов контроллера с компьютера.
root@wirenboard-A5BDCBII:~# du -h /var/lib/mosquitto/mosquitto.db
65M /var/lib/mosquitto/mosquitto.db
Конфиг моста mqtt-брокера
# This file should be used to define Mosquitto bridges.
# See 21bridge.conf.example file for an example of how to do it.
address ***:1883
remote_username ***
remote_password ***
clientid wirenboard
try_private false
start_type automatic
topic /devices/# out 0 "" /wirenboard/A5BDCBII
diag_A5BDCBII_2024-09-03-06.40.18.zip (677,9 КБ)
mosquitto.txt (102,3 КБ)
@DEMON Спасибо. Ещё файл /var/lib/mosquitto/mosquitto.db остался.
@DEMON Супер, спасибо большое! Этого нам хватит для диагностики.
Чтобы нас не ждать, пока можете купировать проблему:
- Остановите брокер командой
systemctl stop mosquitto
- Удалите базу данных
rm /var/lib/mosquitto/mosquitto.db
. В ней хранятся неотправленные в мост сообщения, которые всё равно уже потеряли актуальность. - Установите в файле /etc/mosquitto/mosquitto.conf
persistence false
. Это отключит сохранение сообщений в БД при обрыве связи, но они останутся в памяти контроллера. - Перезагрузите контроллер.
Поставил в разработку тикет, возьмем в работу. По результатам отпишусь.
1 лайк
Спасибо, ожил!
1 лайк
Добрый день!
Вашу проблему устранили. Обновитесь, и всё должно работать корректно.