Производительность wb-rules

Добрый день,
разбираюсь с производительностью. Подключил map12 с гармониками. Всё очень сильно тормозит.
wb-rules - процесс в топе по CPU, хотя никаких скриптов для wb-rules нет. С чем может быть проблема?

Скриншот

Посмотрел у себя, wb-rules 5-7% CPU кушает, никаких правил нет, пользуюсь nodered, на стороннем сервере. Как отключить wb-rules ?

я думаю, можно написать
service wb-rules stop && systemctl disable wb-rules

аа, точно, это же просто сервис, спасибо за наводку, отключил

Вот смотрите: вы столкнулись с проблемой (всё тормозит), как-то сами решили из-за чего она произошла (из-за wb-rules) и спрашиваете, как это исправить (удалить wb-rules). А на самом деле, с очень большой вероятностью, дело вообще не в wb-rules и вы только потратите кучу своего времени.

Пожалуйста напишите подробное описание проблемы, с которой вы столкнулись. Что делали, какое поведение получили, какое ожидали получить. Описание конфигурации оборудование, содержимое соответствующих конфигурационных файлов. Так у нас получится помочь вам гораздо быстрее.

wb-mqtt-serial.conf (516 Байты)
wb-mqtt-db.conf (15,8 КБ)
Оба девайса (WB-MR6C и WB-MAP12H) подключены.

root@wirenboard-ANMSNLVK:~# ls /etc/wb-rules/
alarms.conf
root@wirenboard-ANMSNLVK:~# cat /etc/wb-rules/alarms.conf 
{
  "deviceName": "alarms",
  "deviceTitle": "Alarms",
  "recipients": [],
  "alarms": []
}

root@wirenboard-ANMSNLVK:~# aptitude show wb-rules
Package: wb-rules                 
Version: 1.6.9
State: installed
Automatically installed: no
Priority: optional
Section: misc
Maintainer: Ivan Shvedunov <ivan4th@gmail.com>
Architecture: armel
Uncompressed Size: 5 797 k
Depends: libc6 (>= 2.13)
Breaks: wb-mqtt-confed (< 1.0.2)
Description: Wiren Board Rule Engine

Для чистоты эксперимента, могу перепрошить контроллер (dd), обновить до последней версии и подложить эти же конфигурационные файлы.

Вы не написали подробно, что именно значит “сильно тормозит”.

Пожалуйста напишите подробное описание проблемы, с которой вы столкнулись. Что делали, какое поведение получили, какое ожидали получить

После подключения wb-map12h заметил, что web-интерфейс в лучшем случае долго грузится, но обычно - не отвечает. Консоль по ssh и команды apt-get… стали работать сильно медленнее чем раньше. Посмотрел список процессов, wb-rules оказался на первом месте по загрузке CPU.
Конечно, с бОльшим трафиком по MQTT выросла нагрузка на wb-mqtt-serial и wb-mqtt-db.
С wb-mqtt-db я разобрался, снизив интервалы (прикреплен уже обновленный конфиг).
С wb-mqtt-serial ничего не сделаешь, тут все понятно.
В принципе, отклик у системы стал гораздо лучше (отклик на клавиатуру сдал адекватным). То есть грузила систему wb-mqtt-db.

Но остается вопрос, почему wb-rules грузит проц на 15-40% при том, что ни одного скрипта он не обслуживает.
Тут даже не вопрос, в том, что “сильно тормозит”…

не могло такого быть, что у вас был открыт браузер во время первого эксперимента и, соответственно, отклик на клавиатуру тормозил из-за нагрузки на сеть?

Ну потому что WB-MAP12H с выбранным шаблоном отправляет многие сотни параметров, а wb-rules обрабатывать каждое входящее сообщение. Тут конечно напрашивается оптимизация, но сейчас вот так.

Нет, в сумме wb-rules, wb-mqtt-serial и wb-mqtt-db загрузили CPU на 100%, поэтому так случилось.

Понял, ок. Надеялся, что все-таки проблема с конфигурацией или в небольшой баге, которую несложно поправить =)
Надеюсь, в будущем движок правил будет оптимизирован.

это WB5 или WB6?

WB5
(Форум не дает оставить комментарий из одного слова. Говорит, что сообщение не закончено :thinking:)

У меня тоже 30-40% cpu порой wb-rules.
Снес полностью
apt remove wb-rules wb-rules-system

а какие правила были? Только системные?
И какая версия контроллера и wb-rules?

Я никаких правил не создавал. У меня WB юзается как шлюз MODBUS/1WIRE-MQTT

Linux wirenboard-ADQIUUYW 4.9.22-wb6 #2 SMP Sat Apr 18 17:58:18 UTC 2020 armv7l GNU/Linux

wb-rules 2.3.0

На Wiren Board 6 на чистой прошивке с системными правилами wb-rules использует 20% CPU с редкими всплесками в район 30%.
Это считается нормальным поведением.

Для каких целей?

Отображение всех системных данных - аптайм, IP-адреса, всё вот отсюда: https://github.com/wirenboard/wb-rules-system