В продолжение Как можно оптимизировать wb-mqtt-db? - #3 от пользователя oddentity …
В среде админов есть примета - “работает - не трогай”. Но решил обновить все ПО до последних версий на свою голову. Из изменений заметил только существенно увеличение нагрузки и без того слабенького CPU.
Как видно, нагрузка не опускается ниже 65-70%, иногда до 80%. До обновления было 40-45, редко 55%.
Больше всего смущает увеличение нагрузки более чем в 2 раза процесса wb-mqtt-serial - с тем же самым конфигом было 7-10%, а стало 22-23%. Почему так и что с этим делать? Это же ненормально, когда с 12 устройствами такая нагрузка. Более того, большинство шаблонов переписаны, и из них убрано около половины стандартных топиков (опрашиваются только нужные).
Вот мой конфиг wb-mqtt-serial:
"debug": false,
"ports": [
{
"path": "/dev/ttyRS485-1",
"devices": [
{
"slave_id": 75,
"device_type": "WB-MR6 (no spaces)",
"id": "relay01",
"name": "Relay01 WB-MR6LV-S"
},
{
"slave_id": 45,
"device_type": "WB-MR3 (no spaces)",
"id": "relay02",
"name": "Relay02 WB-MR3LV-S"
},
{
"slave_id": 37,
"device_type": "WB-MR3 (no spaces)",
"id": "relay03",
"name": "Relay03 WB-MR3LV-I"
},
{
"slave_id": 159,
"device_type": "WB-MDM3 (no spaces)",
"id": "dimmer01",
"name": "Dimmer01 WB-MDM3"
},
{
"slave_id": 141,
"device_type": "WB-MRGBW-D 4 channels (my)",
"id": "dimmer02",
"name": "Dimmer02 WB-MRGBW-D"
}
],
"baud_rate": 115200,
"parity": "N",
"data_bits": 8,
"stop_bits": 2,
"poll_interval": 10,
"enabled": true
},
{
"path": "/dev/ttyRS485-2",
"devices": [
{
"slave_id": "59",
"device_type": "WB-MAP12H fw2 (no spaces)",
"name": "Energy01 WB-MAP12H",
"id": "energy01",
"poll_interval": 200
},
{
"slave_id": "40713747",
"device_type": "Mercury 206",
"name": "Energy02 Mercury206",
"id": "energy02"
}
],
"baud_rate": 9600,
"parity": "N",
"data_bits": 8,
"stop_bits": 1,
"poll_interval": 10,
//"response_timeout_ms": 1000,
"enabled": true
},
{
"path": "/dev/ttyMOD1",
"devices": [
{
"slave_id": 28,
"device_type": "WB-M1W2",
"name": "Temperature01",
"id": "temperature01"
},
{
"slave_id": 89,
"device_type": "WB-MSW v.3 (no spaces) hall",
"name": "Climate01 WB-MSW v3",
"id": "climate01"
}
],
"baud_rate": 9600,
"parity": "N",
"data_bits": 8,
"stop_bits": 2,
"poll_interval": 100,
"enabled": true
},
{
"address": "192.168.43.170",
"port": 1170,
"devices": [
{
"slave_id": "51",
"device_type": "WB-MR3 (via WB-MGE)",
"name": "Relay05 WB-MR3LV/I",
"id": "relay05"
},
{
"slave_id": "91",
"device_type": "WB-M1W2 (no spaces)",
"name": "Temperature02",
"id": "temperature02"
},
{
"slave_id": "43",
"device_type": "WB-MRM2-mini (via WB-MGE)",
"name": "Relay04 WB-MRM2-mini",
"id": "relay04"
}
],
"port_type": "tcp",
"poll_interval": 2000,
"response_timeout_ms": 5000
}
]
}
Версии установленного ПО:
python-wb-common/stretch,stretch,stretch,stretch,now 1.3.3 all [installed,automatic]
python-wb-io/stretch,now 1.2.3 armhf [installed]
python3-wb-mcu-fw-updater/stretch,stretch,stretch,stretch,now 1.0.7 all [installed,automatic]
u-boot-tools/stretch,stretch,stretch,stretch,now 2:2017.03+wb-2 all [installed]
u-boot-tools-wb/stretch,stretch,now 2:2017.03+wb-2 armhf [installed,automatic]
wb-configs/stretch,stretch,stretch,stretch,now 1.84.3 all [installed]
wb-configs-stretch/stretch,stretch,stretch,stretch,now 1.84.3 all [installed]
wb-daemon-watchdogs/stretch,stretch,now 1.1 all [installed]
wb-dt-overlays/stretch,stretch,stretch,stretch,now 1.3 all [installed]
wb-homa-adc/stretch,stretch,now 2.0.10 armhf [installed]
wb-homa-gpio/stretch,stretch,now 2.1.0 armhf [installed,auto-removable]
wb-homa-rfsniffer/stretch,now 1.0.9 armhf [installed]
wb-homa-w1/stretch,stretch,now 1.10.1 armhf [installed]
wb-hwconf-manager/stretch,stretch,stretch,stretch,now 1.38.3 all [installed]
wb-mcu-fw-flasher/stretch,stretch,now 1.0.7 armhf [installed]
wb-mcu-fw-updater/stretch,stretch,stretch,stretch,now 1.0.7 all [installed]
wb-mqtt-adc/stretch,now 2.0.10 armhf [installed]
wb-mqtt-confed/stretch,stretch,now 1.2.5 armhf [installed]
wb-mqtt-dac/stretch,stretch,stretch,stretch,now 1.1.1 all [installed]
wb-mqtt-db/stretch,now 1.7.3 armhf [installed]
wb-mqtt-db-cli/stretch,stretch,stretch,stretch,now 1.2.1 all [installed]
wb-mqtt-gpio/stretch,stretch,now 2.1.0 armhf [installed]
wb-mqtt-homeui/stretch,stretch,stretch,stretch,now 2.3.3 all [installed]
wb-mqtt-mbgate/stretch,now 1.0.1 armhf [installed]
wb-mqtt-serial/stretch,stretch,now 2.7.1 armhf [installed]
wb-mqtt-snmp/stretch,now 1.0.1 armhf [installed]
wb-rules/stretch,now 2.6.3 armhf [installed]
wb-rules-system/stretch,stretch,stretch,stretch,now 1.6.9 all [installed]
wb-test-suite/stretch,stretch,stretch,stretch,now 1.20 all [installed]
wb-utils/stretch,stretch,now 2.1.5 all [installed,automatic]
wb-zigbee2mqtt/stretch,stretch,stretch,stretch,now 1.0.0 all [installed]
Версия контроллера 6.6.0
dpkg -s wb-hwconf-manager:
Package: wb-hwconf-manager
Status: install ok installed
Priority: extra
Section: misc
Installed-Size: 365
Maintainer: Evgeny Boger boger@contactless.ru
Architecture: all
Version: 1.38.3
Depends: ucf, wb-utils (>= 2.1.2), wb-configs (>= 1.63), perl, jq, tcc, device-tree-compiler (>= 1.6.0-1), linux-image-wb6 (>= 4.9+wb20201021233713) | linux-image-wb2 (>= 4.9+wb20200925234629), mqtt-tools (>= 1.1.1), wb-mqtt-dac (>= 1.1), wb-rules-system (>= 1.6.8)
Breaks: wb-homa-adc (<< 1.14.2), wb-mqtt-confed (<< 1.0.2), wb-mqtt-homeui (<< 1.6.1)
Conffiles:
/etc/init.d/wb-hwconf-manager 5d64ded12deba13b2aa7843f4a6986d0
/etc/wb-configs.d/02wb-hwconf-manager 57b22000bd3e5e02eefaec1705662f8f
Description: Provides infrastructure for hardware re-configuration via Device Tree overlays
Еще одно замечание - логирование. Только я более-менее избавился от мусора в системном логе, как после обновления опять посыпалась тонна ненужного спама в системный лог. Прежние настройки не работают, т.к. насколько я понял теперь перешли на rsyslog, и все что касалось syslog обычного уже не актуально?
В общем, также нужны инструкции как избавиться от мусора в системном логе с новым rsyslog - сейчас туда валится вообще все: от таймаутов wb-mqtt-serial до КАЖДОГО пакета zigbee2mqtt (зачем?).