Вроде проверял - не влияет, но для чистоты эксперимента, проверю ещё раз - остановлю на пару суток.
Вчера запустил запись лога, завтра пришлю
Ну и, чуть испортит эксперимент - но можно последовательно, когда время реакции будет большим перезапустить node-red, zigbe2mqtt, ну и сам брокер, оценивая изменения.
Логи с момента последней перезагрузки, up time 4d 18h 48m:
динамика роста задержки:
wb-rules_20231207T161025.log (105,5 КБ)
динамика роста задержки детально:
wb-rules_20231207T161025 (1).log (864,2 КБ)
за некоторое время
zigbee.log (632,3 КБ)
up time 2d 5h 32m
начинает потихоньку подтормаживать …
wb-rules_20231211T163008.log (98,1 КБ)
запись лога за это время:
zigbee.log (1,7 МБ)
О, отлично.
Вот как стенд выглядит:
Воспроизвожу, Сейчас отлажу процесс и отдам (настоящим) программистам.
Отлично! Запись лога продолжаю дальше.
Нагружает хорошо
Интересно, что воспроизведение остановил нескоко минут назад а процесс правил все еще создает нагрузку:
В общем сейчас набросаю (да или использую тот что выше) скрипт для оценки “задержки”.
И MQTT token timeout есть, хорошо. Но это - синтетически, у меня нету реле MR6C_2/K5
Dec 12 06:41:51 wirenboard-AWWCDXFH wb-rules[23683]: INFO: [rule info] Включаем реле MR6C_2/K5 1702363311223
Dec 12 06:41:51 wirenboard-AWWCDXFH wb-rules[23683]: ERROR: [rule error] failed to SetValue for unexisting control MR6C_2/K5: true
Dec 12 06:41:52 wirenboard-AWWCDXFH wb-rules[23683]: INFO: [rule info] Пришло значение из топика zigbee2mqtt/Aqara_M&I_sensor_3 - {"illuminance":15,"last_seen":1702152247117,"linkquality":25,"occupancy":false} 1702363312396
Dec 12 06:41:52 wirenboard-AWWCDXFH wb-rules[23683]: INFO: [rule info] Выключаем реле MR6C_2/K5 1702363312397
Dec 12 06:41:52 wirenboard-AWWCDXFH wb-rules[23683]: ERROR: [rule error] failed to SetValue for unexisting control MR6C_2/K5: false
Dec 12 06:41:54 wirenboard-AWWCDXFH wb-rules[23683]: INFO: [rule info] Пришло значение из топика Aqara_M&I_sensor_3/occupancy - true 1702363314264
Dec 12 06:41:57 wirenboard-AWWCDXFH wb-rules[23683]: ERROR: [wbgo_mqtt] MQTT token wait timeout: *mqtt.PublishToken (&{{{{0 0} 0 0 0 0} 0xd31440 <nil>} 15559})
Dec 12 06:42:04 wirenboard-AWWCDXFH wb-rules[23683]: INFO: [rule info] Пришло значение из топика Aqara_M&I_sensor_3/occupancy - false 1702363324364
Dec 12 06:42:05 wirenboard-AWWCDXFH wb-rules[23683]: INFO: [rule info] Пришло значение из топика Aqara_M&I_sensor_3/occupancy - true 1702363325644
Dec 12 06:42:08 wirenboard-AWWCDXFH wb-rules[23683]: INFO: [rule info] Пришло значение из топика zigbee2mqtt/Aqara_M&I_sensor_3 - {"battery":100,"illuminance":15,"last_seen":1702154720861,"linkquality":25,"occupancy":false,"voltage":3015} 1702363328852
Dec 12 06:42:08 wirenboard-AWWCDXFH wb-rules[23683]: INFO: [rule info] Выключаем реле MR6C_2/K5 1702363328853
Здорово что процесс выяснения причин сдвинулся с места. Очень хочется разобраться и понять почему так происходит и в полной мере использовать zigbee устройства. А вообще есть какие то предложения?
Пока подозреваю очереди внутри go.
Dec 12 07:11:33 wirenboard-AWWCDXFH wb-rules[23683]: INFO: [rule info] Задержка составила 22255мс
Вы имеете в виду Go scheduler?
Да. У меня после того как поток сообщений в MQTT уже останавливается у же остановлен несколько минут - правила продолжают их обрабатывать. То есть они кэшируются уже после того как поступили в движок правил.
И что с этим делать? Как решить эту проблему?
Отдам разработчикам - они достоверно опредлят причины и, возможно, способы решения проблемы.
Ок, тогда ждемс …
Совсем большие задержки начались …
wb-rules_20231213T174502.log (57,9 КБ)
И вот еще: полный лог WB-rules, пошли ошибки MQTT
wb-rules_20231213T175020.log (1,4 МБ)
Ошибки mosquitto
mosquitto_20231213T174636.log (50,6 КБ)
zigbee.log (5,4 МБ)
и заодно диагностический архив
кстати, из веб интерфейса выгрузка работать не хочет
Задержки стали совсем не приемлемыми,
вам нужна какая-либо информация с контроллера для диагностики в таком состоянии, логи и т.д.
Или можно перезагрузить контроллер, wb-rules ?!
Да, можно перезапускать сервис, у меня устойчиво воспроизводится.
Хорошо.
Посмотрите, вчера лог WB-rules вам скидывал, почему-то еще и ошибки MQTT начались …
Да, вижу, это интересно, конечно. Но тут надо ждать настоящего программиста, гуру.