Aug 02 12:42:03 wirenboard-AH4I445Z wb-rules[21159]: INFO: [rule info] wb-engine init
Aug 02 12:42:03 wirenboard-AH4I445Z wb-rules[21159]: INFO: all rule files are loaded
Aug 02 12:42:07 wirenboard-AH4I445Z wb-rules[21159]: INFO: [rule info] Traceback (most recent call last):
File "/usr/bin/wb-engine-helper", line 877, in <module>
main()
File "/usr/bin/wb-engine-helper", line 872, in main
return args[sys.argv[1]]()
File "/usr/bin/wb-engine-helper", line 860, in start
if ('devices_config' in config): initHass()
File "/usr/bin/wb-engine-helper", line 579, in initHass
hassAdd(device)
File "/usr/bin/wb-engine-helper", line 423, in hassAdd
if (control['id'] not in device_live['controls']): continue
KeyError: 'controls'
Для начала - исключите все стороннее ПО. В частности модуль - wb-engine. Ну и проверьте как работает.
Подозреваю что и iops на раздел зашкаливают.
Во-первых отключите persistence в mosquitto.conf
Ну и - подпишитесь на весь брокер, такое количество публикаций будет, пожалуй, видно сразу. Нужно установить источник, 3К публикаций/секунду - такое впечатление что есть зацикленный скрипт.
Если wb-rules остановить - количество падает?
И не включайте wb-engine.
Кстати, забыл ещё указать, после перехода на testing контроллер стал ещё перезагружаться пару раз в сутки. Вот пример последних строчек перед перезагрузкой (судя по логам перезагрузка произошла в 04-08-2024 00:38:56
приложен диагностический архив, доступен только сотрудникам поддержки
(458,0 КБ)
:
04-08-2024 00:38:56.761 Movable zone start for each node
04-08-2024 00:38:56.761 Movable zone start for each node
04-08-2024 00:38:56.761 Normal [mem 0x0000000100000000-0x000000013fffffff]
04-08-2024 00:38:56.761 DMA32 empty
04-08-2024 00:38:56.761 DMA [mem 0x0000000040000000-0x00000000ffffffff]
04-08-2024 00:38:56.761 Zone ranges:
04-08-2024 00:38:56.761 NUMA: NODE_DATA [mem 0x13f7b89c0-0x13f7bafff]
04-08-2024 00:38:56.761 NUMA: Faking a node at [mem 0x0000000040000000-0x000000013fffffff]
04-08-2024 00:38:56.761 NUMA: No NUMA configuration found
04-08-2024 00:38:56.761 OF: reserved mem: 0x0000000040000000..0x000000004003ffff (256 KiB) nomap non-reusable secmon@40000000
04-08-2024 00:38:56.761 efi: UEFI not found.
04-08-2024 00:38:56.761 efi: UEFI not found.
04-08-2024 00:38:56.761 Machine model: Wiren Board rev. 8.4.3 (T507)
04-08-2024 00:38:56.761 KASLR disabled due to lack of seed
04-08-2024 00:38:56.761 Linux version 6.8.0-wb17 (root@wbdevenv) (aarch64-linux-gnu-gcc (Debian 10.2.1-6) 10.2.1 20210110, GNU ld (GNU Binutils for Debian) 2.35.2) #1 SMP Thu Jul 25 08:49:29 UTC 2024
04-08-2024 00:38:56.760 Booting Linux on physical CPU 0x0000000000 [0x410fd034]
04-08-2024 00:28:55.110 [wb-cloud-agent-telegraf] 2024-08-03T21:28:55Z E! [agent] Error writing to outputs.influxdb_v2::influx-wbc: failed to send metrics to any configured server(s)
04-08-2024 00:28:55.106 [wb-cloud-agent-telegraf] 2024-08-03T21:28:55Z E! [outputs.influxdb_v2::influx-wbc] When writing to [https://influx.wirenboard.cloud]: 520 : 520
04-08-2024 00:28:36.867 [wb-mqtt-serial] WARNING: [modbus] failed to read 6 coil(s) @ 0 of device modbus:19: Serial protocol error: request timed out
04-08-2024 00:27:29.730 [wb-mqtt-serial] WARNING: [modbus] failed to read 7 coil(s) @ 5100 of device modbus:102: Serial protocol error: malformed response: invalid crc
04-08-2024 00:27:09.794 [wb-cloud-agent-telegraf] 2024-08-03T21:27:09Z E! [agent] Error writing to outputs.influxdb_v2::influx-wbc: failed to send metrics to any configured server(s)
04-08-2024 00:27:09.794 [wb-cloud-agent-telegraf] 2024-08-03T21:27:09Z E! [agent] Error writing to outputs.influxdb_v2::influx-wbc: failed to send metrics to any configured server(s)
04-08-2024 00:27:09.782 [wb-cloud-agent-telegraf] 2024-08-03T21:27:09Z E! [outputs.influxdb_v2::influx-wbc] When writing to [https://influx.wirenboard.cloud]: Post "https://influx.wirenboard.cloud/api/v2/write?bucket=mqtt-data-81f272b3&org=poohvlzgmailcom-b2ef26b4": context deadline exceeded (Client.Timeout exceeded while awaiting headers)
04-08-2024 00:25:06.765 [wb-cloud-agent-telegraf] 2024-08-03T21:25:06Z E! [agent] Error writing to outputs.influxdb_v2::influx-wbc: failed to send metrics to any configured server(s)
04-08-2024 00:25:06.760 [wb-cloud-agent-telegraf] 2024-08-03T21:25:06Z E! [outputs.influxdb_v2::influx-wbc] When writing to [https://influx.wirenboard.cloud]: Post "https://influx.wirenboard.cloud/api/v2/write?bucket=mqtt-data-81f272b3&org=poohvlzgmailcom-b2ef26b4": context deadline exceeded (Client.Timeout exceeded while awaiting headers)
04-08-2024 00:24:08.026 [wb-mqtt-serial] WARNING: [modbus] failed to read 1 holding(s) @ 91 of device modbus:82: Serial protocol error: request timed out
04-08-2024 00:21:38.946 [wb-mqtt-serial] WARNING: [modbus] failed to read 10 coil(s) @ 5100 of device modbus:153: Serial protocol error: request timed out
прикладываю видео, помогите в нём разобраться: MQTT Explorer 2024-08-04 01-07-12.mp4 — Яндекс Диск
Если смотреть по $SYS/broker/load/messages/sent/1min , то средняя нагрузка 25000 сообщений в минуту, если смотреть по MQTT exporer, то в среднем за 10 секунд 400-450 сообщений отправляется, а это ~2500, что ровно в 10 раз меньше, что пишется в $SYS/broker/load/messages/sent/1min
Как видно в видео, самые обновляемые топики это датчик движения и звука MSW, я увеличил вручную их опрос до 500мс, но это не помогло.
Результата всё ещё нет Знатно я намучался и жена уже грозится из неработающего дома выгнать…
В общем, входящие данные такие: nginx выключен, все правила (кроме одного, отвечающего за нажатия выключателей и включение реле) выключены, нагрузка сообщениями низкая, но контроллер в 2024-08-05 19:12:17 ушёл в перезагрузку. В системной журнале пусто. diag_output_AH4I445Z_2024-08-05-20.16.53.zip (577,7 КБ)