Периодически (иногда раз в две недели иногда раз в месяц) происходят фактические зависания контроллера - скрипты не работают, хотя в консоль и веб-интерфейс с большими тормозами войти можно. Налицо утечка памяти - 99% использования и интесивное использование свопа, но какой процесс ее пожирает разобраться сложно из-за недостатка опыта и времени. На чистый WB7 установлены sprut и node red. Все обновлено и последних релизов. Пока приходится перегружать контроллер, но хотелось бы исправить проблему.
Добрый день!
Для диагностики проблемы пришлите, пожалуйста, архив с диагностической информацией контроллера. Создание архива описано в документации.
Также рекомендую выполнить базовую диагностику:
htop
dmesg
journalctl -xe
Ищем строки, содержащие:
Out of memory
,Killed process
,OOM
- ошибки
wb-rules
,node
и других служб
Добавьте в crontab
строки для регулярного мониторинга:
*/10 * * * * free -m >> /var/log/memwatch.log
*/10 * * * * top -b -n 1 | head -n 20 >> /var/log/memwatch.log
Это позволит спустя несколько дней отследить, как растёт потребление памяти.
Дополнительно можно будет настроить логирование по конкретному процессу, если станет понятно, кто вызывает утечку или перегрузку.
diag_output_ACOWRHBP_2025-05-15-05.38.45.zip (139,2 КБ)
htop - команда не установлена,
dmesg - встрачаются ошибки, но сходу OOM не нашел.
journalctl -xe - переодически встречаются одинаковые ошибки
wb-mqtt-serial[1633]: ERROR: [storage] BDB put failed: Db::put: Invalid argum>
wb-mqtt-serial[1633]: WARNING: [driver] Failed to save value “33.59” of contr>
crontab настроил, буду мониторить
Похоже найден виновник - за 4 дня процесс wb-mqtt-serial 400+ Мб скушал. В чем причина?
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1633 root 20 0 445484 353048 6168 S 9.5 17.1 487:25.22 wb-mqtt-s+
1633 root 20 0 877344 784400 5016 S 9.5 38.1 1102:00 wb-mqtt-s+
Покажите пожалуйста полностью процесс.
Ну и рекомендую выполнить rm /var/lib/wb-mqtt-serial/libwbmqtt.db && systemctl restart wb-mqtt-serial
при записи в memwatch.log обрезается строка, но выглядит примерно вот так, но это уже после rm и restart
6834 root 20 0 103008 10272 6032 S 9.2 0.5 8:09.44 wb-mqtt-serial
Последите пару дней пожалуйста.