Log.labels.unavailable

В текущем контексте проскочило такое сообщение

Dec 13 15:28:14 wirenboard-AHDPBCQU mosquitto[1989]: 1702470494: Saving in-memory database to /var/lib/mosquitto//mosquitto.db.
Dec 13 15:28:14 wirenboard-AHDPBCQU mosquitto[1989]: 1702470494: Error saving in-memory database, unable to open /var/lib/mosquitto//mosquitto.db.new for writing.
Dec 13 15:28:14 wirenboard-AHDPBCQU mosquitto[1989]: 1702470494: Error: Permission denied.

Вижу, что путь указан через два слэша.
Это такой тип записи или ошибка?

Сегодняшние наблюдения заставляют вернуться к вопросу из топика.
Снова недоступен системный журнал.

root@wirenboard-AHDPBCQU:~# systemctl status wb-diag-collect
● wb-diag-collect.service - one-click diagnostic data collector for Wiren Board, generating archive with data
     Loaded: loaded (/lib/systemd/system/wb-diag-collect.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2023-12-13 13:58:12 MSK; 19h ago
   Main PID: 2119 (wb-diag-collect)
      Tasks: 2 (limit: 1146)
     Memory: 7.6M
        CPU: 39.661s
     CGroup: /system.slice/wb-diag-collect.service
             └─2119 /usr/bin/python3 /usr/bin/wb-diag-collect -s diag_archive

Dec 13 13:58:12 wirenboard-AHDPBCQU systemd[1]: Started one-click diagnostic data collector for Wiren Board, generating archive with data.

И дополнительно к этому список устройств не загружается.
Модули в панели Устройства появляются по одному-два и исчезают

root@wirenboard-AHDPBCQU:~# systemctl status mosquitto
● mosquitto.service - Mosquitto MQTT Broker
     Loaded: loaded (/lib/systemd/system/mosquitto.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2023-12-13 16:52:32 MSK; 16h ago
       Docs: man:mosquitto.conf(5)
             man:mosquitto(8)
    Process: 12162 ExecStartPre=/bin/mkdir -m 740 -p /var/log/mosquitto (code=exited, status=0/SUCCESS)
    Process: 12163 ExecStartPre=/bin/chown mosquitto /var/log/mosquitto (code=exited, status=0/SUCCESS)
    Process: 12164 ExecStartPre=/bin/mkdir -m 740 -p /run/mosquitto (code=exited, status=0/SUCCESS)
    Process: 12165 ExecStartPre=/bin/chown mosquitto /run/mosquitto (code=exited, status=0/SUCCESS)
   Main PID: 12166 (mosquitto)
      Tasks: 1 (limit: 1146)
     Memory: 3.6M
        CPU: 24min 55.801s
     CGroup: /system.slice/mosquitto.service
             └─12166 /usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf

Dec 14 08:55:49 wirenboard-AHDPBCQU mosquitto[12166]: 1702533349: Client wb-mqtt-homeui-A26R5S1l6c closed its connection.
Dec 14 08:55:49 wirenboard-AHDPBCQU mosquitto[12166]: 1702533349: New client connected from ::ffff:10.8.1.98:51302 as wb-mqtt-homeui-aUzNsEM5Yy (p2, c1, k60, u'root').
Dec 14 08:58:42 wirenboard-AHDPBCQU mosquitto[12166]: 1702533522: New client connected from ::ffff:10.8.1.98:51353 as wb-mqtt-homeui-EUQhSuGNKB (p2, c1, k60, u'root').
Dec 14 09:00:17 wirenboard-AHDPBCQU mosquitto[12166]: 1702533617: Client wb-mqtt-homeui-EUQhSuGNKB closed its connection.
Dec 14 09:00:17 wirenboard-AHDPBCQU mosquitto[12166]: 1702533617: New client connected from ::ffff:10.8.1.98:51383 as wb-mqtt-homeui-NOiZyxhe10 (p2, c1, k60, u'root').
Dec 14 09:08:28 wirenboard-AHDPBCQU mosquitto[12166]: 1702534108: New connection from /var/run/mosquitto/mosquitto.sock:0 on port 0.
Dec 14 09:08:28 wirenboard-AHDPBCQU mosquitto[12166]: 1702534108: New client connected from /var/run/mosquitto/mosquitto.sock:0 as mqtt-get-dump-fk6zAu3w (p2, c1, k60).
Dec 14 09:08:29 wirenboard-AHDPBCQU mosquitto[12166]: 1702534109: Client mqtt-get-dump-fk6zAu3w closed its connection.
Dec 14 09:15:34 wirenboard-AHDPBCQU mosquitto[12166]: 1702534534: Client wb-mqtt-homeui-NOiZyxhe10 closed its connection.
Dec 14 09:15:34 wirenboard-AHDPBCQU mosquitto[12166]: 1702534534: New client connected from ::ffff:10.8.1.98:51546 as wb-mqtt-homeui-st1JqvEBaH (p2, c1, k60, u'root').

Также отсутствуют в Устройствах и модули контроллера из раздела Descrete I/O

wb_diag_AHDPBCQU_2023-12-14-09.09.02.zip (228,1 КБ)

Перезагрузка сервисов
systemctl restart wb-mqtt-logs
wb-mqtt-serial (через WebUI)
wb-hardware (через WebUI)

восстанавливает вывод в раздел “Устройства”

приложен диагностический архив, доступен только сотрудникам поддержки
(230,9 КБ)

Я вновь советую отключить persistence - и проверить.

С persistence false сегодня отключение Системного журнала не повторилось.

Но вот в разделе Устройства снова практически все панели пропали


Соответственно в таблице Каналы MQTT записей тоже по минимуму…

systemctl status mosquitto
root@wirenboard-AHDPBCQU:~# systemctl status mosquitto
● mosquitto.service - Mosquitto MQTT Broker
     Loaded: loaded (/lib/systemd/system/mosquitto.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2023-12-14 11:27:17 MSK; 20h ago
       Docs: man:mosquitto.conf(5)
             man:mosquitto(8)
    Process: 22355 ExecStartPre=/bin/mkdir -m 740 -p /var/log/mosquitto (code=exited, status=0/SUCCESS)
    Process: 22356 ExecStartPre=/bin/chown mosquitto /var/log/mosquitto (code=exited, status=0/SUCCESS)
    Process: 22357 ExecStartPre=/bin/mkdir -m 740 -p /run/mosquitto (code=exited, status=0/SUCCESS)
    Process: 22358 ExecStartPre=/bin/chown mosquitto /run/mosquitto (code=exited, status=0/SUCCESS)
   Main PID: 22359 (mosquitto)
      Tasks: 1 (limit: 1146)
     Memory: 2.2M
        CPU: 32min 18.175s
     CGroup: /system.slice/mosquitto.service
             └─22359 /usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf

Dec 15 00:33:10 wirenboard-AHDPBCQU mosquitto[22359]: 1702589590: Client <unknown> disconnected due to protocol error.
Dec 15 00:33:14 wirenboard-AHDPBCQU mosquitto[22359]: 1702589593: Client <unknown> closed its connection.
Dec 15 00:33:14 wirenboard-AHDPBCQU mosquitto[22359]: 1702589594: New connection from 172.233.58.223:50778 on port 1883.
Dec 15 00:33:14 wirenboard-AHDPBCQU mosquitto[22359]: 1702589594: Client <unknown> disconnected due to protocol error.
Dec 15 05:08:16 wirenboard-AHDPBCQU mosquitto[22359]: 1702606096: New connection from 167.248.133.185:48228 on port 1883.
Dec 15 05:08:16 wirenboard-AHDPBCQU mosquitto[22359]: 1702606096: Client <unknown> disconnected, not authorised.
Dec 15 07:26:59 wirenboard-AHDPBCQU mosquitto[22359]: 1702614419: New client connected from ::ffff:10.8.1.98:62767 as wb-mqtt-homeui-DTHrRxQRgd (p2, c1, k60, u’root’).
Dec 15 07:26:59 wirenboard-AHDPBCQU mosquitto[22359]: 1702614419: New client connected from ::ffff:10.8.1.98:62774 as wb-mqtt-homeui-hKyg4WE1Tq (p2, c1, k60, u’root’).
Dec 15 07:30:22 wirenboard-AHDPBCQU mosquitto[22359]: 1702614622: New connection from 10.8.1.98:63095 on port 1883.
Dec 15 07:30:22 wirenboard-AHDPBCQU mosquitto[22359]: 1702614622: New client connected from 10.8.1.98:63095 as mqtt-explorer-bdeb35f1 (p2, c1, k60, u’root’).

systemctl status wb-mqtt-logs
root@wirenboard-AHDPBCQU:~# systemctl status wb-mqtt-logs
● wb-mqtt-logs.service - Wiren Board journald to MQTT gateway
     Loaded: loaded (/lib/systemd/system/wb-mqtt-logs.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2023-12-14 11:37:28 MSK; 19h ago
   Main PID: 24163 (wb-logs main)
      Tasks: 5 (limit: 1146)
     Memory: 1.6M
        CPU: 1.000s
     CGroup: /system.slice/wb-mqtt-logs.service
             └─24163 /usr/bin/wb-mqtt-logs

Dec 14 11:37:28 wirenboard-AHDPBCQU systemd[1]: Started Wiren Board journald to MQTT gateway.
Dec 14 11:37:28 wirenboard-AHDPBCQU wb-mqtt-logs[24163]: MQTT broker localhost:1883
Dec 14 11:37:28 wirenboard-AHDPBCQU wb-mqtt-logs[24163]: INFO: [mqtt] Default host and port detected, checking if UNIX socket exists on /var/run/mosquitto/mosquitto.sock
Dec 14 11:37:28 wirenboard-AHDPBCQU wb-mqtt-logs[24163]: INFO: [mqtt] UNIX socket exists, using it for connection
Dec 14 11:37:28 wirenboard-AHDPBCQU wb-mqtt-logs[24163]: INFO: [mqtt] connection estabilished with code “0” <success>
Dec 14 11:37:28 wirenboard-AHDPBCQU wb-mqtt-logs[24163]: INFO: [mqtt] subscription succeeded (message id 1)
Dec 14 11:37:28 wirenboard-AHDPBCQU wb-mqtt-logs[24163]: INFO: [mqtt] subscription succeeded (message id 2)
Dec 14 11:37:28 wirenboard-AHDPBCQU wb-mqtt-logs[24163]: INFO: [mqtt] subscription succeeded (message id 3)

systemctl status wb-mqtt-serial
root@wirenboard-AHDPBCQU:~# systemctl status wb-mqtt-serial
● wb-mqtt-serial.service - MQTT Driver for serial devices
     Loaded: loaded (/lib/systemd/system/wb-mqtt-serial.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2023-12-14 09:25:24 MSK; 22h ago
   Main PID: 28014 (wb-mqtt-serial)
      Tasks: 10 (limit: 1146)
     Memory: 9.9M
        CPU: 3h 2min 20.626s
     CGroup: /system.slice/wb-mqtt-serial.service
             └─28014 /usr/bin/wb-mqtt-serial

Dec 14 11:57:55 wirenboard-AHDPBCQU wb-mqtt-serial[28014]: WARNING: [modbus] failed to read 6 discrete(s) @ 0 of device modbus:79: Serial protocol error: malformed response: invalid crc
Dec 14 11:57:55 wirenboard-AHDPBCQU wb-mqtt-serial[28014]: WARNING: [modbus] failed to read 1 input(s) @ 283 of device modbus:73: Serial protocol error: malformed response: invalid crc
Dec 14 13:17:55 wirenboard-AHDPBCQU wb-mqtt-serial[28014]: WARNING: [modbus] failed to read 1 input(s) @ 280 of device modbus:111: Serial protocol error: malformed response: invalid crc
Dec 14 15:47:55 wirenboard-AHDPBCQU wb-mqtt-serial[28014]: WARNING: [modbus] failed to read 1 input(s) @ 14013 of device modbus:1: Serial protocol error: malformed response: invalid data size
Dec 14 18:17:55 wirenboard-AHDPBCQU wb-mqtt-serial[28014]: WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:41: Serial protocol error: malformed response: invalid crc
Dec 14 20:37:55 wirenboard-AHDPBCQU wb-mqtt-serial[28014]: WARNING: [modbus] failed to read 1 input(s) @ 32 of device modbus:41: Serial protocol error: malformed response: invalid crc
Dec 15 00:47:40 wirenboard-AHDPBCQU wb-mqtt-serial[28014]: WARNING: [serial client] </dev/ttyRS485-2 9600 8 N 2> Register read rate limit is exceeded
Dec 15 03:07:56 wirenboard-AHDPBCQU wb-mqtt-serial[28014]: WARNING: [modbus] failed to read 1 input(s) @ 280 of device modbus:65: Serial protocol error: malformed response: invalid crc
Dec 15 03:27:56 wirenboard-AHDPBCQU wb-mqtt-serial[28014]: WARNING: [modbus] failed to read 2 input(s) @ 9 of device modbus:65: Serial protocol error: malformed response: invalid crc
Dec 15 05:17:56 wirenboard-AHDPBCQU wb-mqtt-serial[28014]: WARNING: [modbus] failed to read 1 discrete(s) @ 0 of device modbus:41: Serial protocol error: malformed response: invalid crc

Пока не вносил никаких исправлений со вчерашнего дня
Утренний диагностический архив

приложен диагностический архив, доступен только сотрудникам поддержки
(222,5 КБ)

Какие посоветуете произвести первичные действия для выявления причин пропадания топиков?

Топиков реально нет? Покажите

timeout 4 mosquitto_sub -v -t /devices/#

Причем я вижу что:

Dec 14 09:25:23 wirenboard-AHDPBCQU wb-mqtt-serial[1861]: ERROR: [driver] Failed to accept 'on' value for control "Buzzer" of device "wb-msw-v3_73": Control "Buzzer" of device "wb-msw-v3_73" was deleted @ wblib/control.cpp:171

То есть топик устройства был создан в процессе запуска wb-mqtt-serial и затем штатно удален при завершении сервиса,

timeout 4 mosquitto_sub -v -t.txt (36,2 КБ)

Я вижу топики всех устройств, причем с meta. Эти топики видно в “настройки - Каналы MQTT?”
Ну и, традициоонно - используя другой компьютер или телефон?

В разделе Каналы MQTT также минимально записей - два десятка виртуальный устройств.

Каналы MQTT

|Устройство/Контрол|Тип|MQTT-топик|Значение|Статус|
|---|---|---|---|---|
|temperature_setpoints_floor/_floor_eco|range|/devices/temperature_setpoints_floor/controls/_floor_eco|15|OK|
|temperature_setpoints_floor/bathroom heat schedule|switch|/devices/temperature_setpoints_floor/controls/bathroom heat schedule|true|OK|
|temperature_setpoints_floor/bathroom prev|value|/devices/temperature_setpoints_floor/controls/bathroom prev|10|OK|
|temperature_setpoints_floor/bathroom temp|range|/devices/temperature_setpoints_floor/controls/bathroom temp|10|OK|
|temperature_setpoints_floor/bedroom heat schedule|switch|/devices/temperature_setpoints_floor/controls/bedroom heat schedule|true|OK|
|temperature_setpoints_floor/bedroom prev|value|/devices/temperature_setpoints_floor/controls/bedroom prev|10|OK|
|temperature_setpoints_floor/bedroom temp|range|/devices/temperature_setpoints_floor/controls/bedroom temp|10|OK|
|temperature_setpoints_floor/children heat schedule|switch|/devices/temperature_setpoints_floor/controls/children heat schedule|true|OK|
|temperature_setpoints_floor/children prev|value|/devices/temperature_setpoints_floor/controls/children prev|10|OK|
|temperature_setpoints_floor/children temp|range|/devices/temperature_setpoints_floor/controls/children temp|10|OK|
|temperature_setpoints_floor/loggia heat schedule|switch|/devices/temperature_setpoints_floor/controls/loggia heat schedule|true|OK|
|temperature_setpoints_floor/loggia prev|value|/devices/temperature_setpoints_floor/controls/loggia prev|10|OK|
|temperature_setpoints_floor/loggia temp|range|/devices/temperature_setpoints_floor/controls/loggia temp|10|OK|
|temperature_setpoints_radiator/_radiator_eco|range|/devices/temperature_setpoints_radiator/controls/_radiator_eco|18|OK|
|temperature_setpoints_radiator/bedroom heat schedule|switch|/devices/temperature_setpoints_radiator/controls/bedroom heat schedule|true|OK|
|temperature_setpoints_radiator/bedroom temp|range|/devices/temperature_setpoints_radiator/controls/bedroom temp|22|OK|
|temperature_setpoints_radiator/children heat schedule|switch|/devices/temperature_setpoints_radiator/controls/children heat schedule|true|OK|
|temperature_setpoints_radiator/children temp|range|/devices/temperature_setpoints_radiator/controls/children temp|16|OK|
|temperature_setpoints_radiator/kitchen heat schedule|switch|/devices/temperature_setpoints_radiator/controls/kitchen heat schedule|true|OK|
|temperature_setpoints_radiator/kitchen temp|range|/devices/temperature_setpoints_radiator/controls/kitchen temp|15|OK|
|temperature_setpoints_radiator/loggia heat schedule|switch|/devices/temperature_setpoints_radiator/controls/loggia heat schedule|true|OK|
|temperature_setpoints_radiator/loggia temp|range|/devices/temperature_setpoints_radiator/controls/loggia temp|18|OK|

Проверил с другого компа и телефона - так же не отображаются и тот же набор в “Каналы MQTT”

Если я перезапущу wb-mqtt-serial и hardware, то они появятся.

Дополнительно могу сообщить, что работает бридж на сервер с Grafana и данные туда исправно уходят.

А что выводит

apt update && apt policy wb-mqtt-homeui

потому что актуальный wb-mqtt-homeui=2.75.14-wb102

wb-mqtt-homeui:
  Installed: 2.75.14-wb101
  Candidate: 2.75.14-wb102
  Version table:
     2.75.14-wb102 990
        990 http://deb.wirenboard.com/wb6/bullseye stable/main armhf Packages
 *** 2.75.14-wb101 100
        100 /var/lib/dpkg/status

То есть - необновленные пакеты, а точно ли все обновились до актуальных?

Обновлялось все fit’om через WebUI
Теперь обновил apt’ом еще три файла, в том числе и wb-mqtt-homeui
На всякий случай забэкапил wb-webui.conf и подставил чистый из обновления.
Перезагрузил
Завтра снова проверю

Как правильно проверить все ли обновилось до актуальных?

Ну, если apt update && apt upgrade не выводят новых - то значит обновлено все.
Так а сейчас - работает интерфейс?

После reboot все устройства в панель зашли и отображаются
Из необычного, только что медленнее появляются, особенно Descrete I/O

Монитор системы тоже работает

Завтра снова проверю

Прошло несколько дней наблюдений.
Выяснилось, что пропадание топиков из WebUI было связано с несовместимым конфигом wb-webui.conf

Из wb-2207
wb-webui.conf (52,0 КБ)

Из wb-2310
wb-webui (wb-2310).conf (55,7 КБ)
Для этого пришлось вручную вновь набить этот конфиг виджетами

Вернул обратно persistence true - после перезагрузки Системный журнал загружается.

Осталось только медленная загрузка сервисов. Из-за чего сыпятся сообщения вида

|19-12-2023 09:22:46.398 [wb-rules]|ERROR: [rule error] failed to SetValue for unexisting control wb-mdm3_87/Channel 2: 90|
|---|---|
|19-12-2023 09:22:46.102 [wb-rules]|ERROR: [rule error] failed to SetValue for unexisting control wb-mdm3_87/Channel 1: 70|
|19-12-2023 09:22:45.612 [wb-rules]|ERROR: [rule error] failed to SetValue for unexisting control wb-mdm3_87/Channel 1: 70|
|19-12-2023 09:22:45.310 [wb-mqtt-serial]|INFO: [mqtt] subscription succeeded (message id 1361)|
|19-12-2023 09:22:45.192 [wb-mqtt-serial]|INFO: [mqtt] subscription succeeded (message id 1360)|
|19-12-2023 09:22:44.145 [wb-rules]|ERROR: [rule error] failed to SetValue for unexisting control wb-mdm3_41/Channel 3: 70|
|19-12-2023 09:22:43.843 [wb-mqtt-serial]|INFO: [mqtt] subscription succeeded (message id 1017)|
|19-12-2023 09:22:43.817 [wb-rules]|ERROR: [rule error] failed to SetValue for unexisting control wb-mdm3_41/Channel 3: 70|
|19-12-2023 09:22:43.814 [wb-mqtt-serial]|INFO: [mqtt] subscription succeeded (message id 1016)|
|19-12-2023 09:22:43.788 [wb-mqtt-serial]|INFO: [mqtt] subscription succeeded (message id 1009)|
|19-12-2023 09:22:43.761 [wb-mqtt-serial]|INFO: [mqtt] subscription succeeded (message id 1002)|
|19-12-2023 09:22:43.750 [wb-mqtt-serial]|INFO: [mqtt] subscription succeeded (message id 995)|
|19-12-2023 09:22:43.697 [wb-rules]|ERROR: [rule error] failed to SetValue for unexisting control wb-mdm3_41/Channel 2: 70|
|19-12-2023 09:22:43.342 [wb-rules]|ERROR: [rule error] failed to SetValue for unexisting control wb-mdm3_41/Channel 2: 70|
|19-12-2023 09:22:43.104 [wb-rules]|INFO: [rule info] Выключатель wb-mdm3_41/Input 1 counter выключил свет|
|19-12-2023 09:22:43.024 [wb-rules]|ERROR: [rule error] failed to SetValue for unexisting control wb-mdm3_41/Channel 1: 90|
|19-12-2023 09:22:42.562 [wb-mqtt-serial]|INFO: [mqtt] subscription succeeded (message id 898)|
|19-12-2023 09:22:42.520 [wb-mqtt-serial]|INFO: [mqtt] subscription succeeded (message id 897)|