Consommation mémoire anormale

Bonjour,

suite à la non réponse de l’interface de Jeedom, je me suis connecté en ssh. J’ai alors pu constater une consommation anormale de la mémoire. Tant la RAM que le SWAP était saturée. Il a fallu redémarrer la machine pour résoudre le problème.

Il s’avère que les plugins encoean et rfxcom sont les principaux consommateurs de mémoire (605 Mo dans le swap pour le plugin enocean et 241 Mo dans le swap pour le plugin rfxcom). Tous deux utilisent python3. C’est peut-être relatif aux différents problèmes liés à python3 remontés ces derniers temps.

Un smem -t -k -p -s swap -r renvoie les informations suivantes :

  PID User     Command                         Swap      USS      PSS      RSS 
 1972 root     /usr/bin/python3 /var/www/h   605.4M   236.9M   237.6M   242.7M 
1670597 www-data /usr/bin/python3 /var/www/h   241.8M   287.6M   288.4M   293.8M 
 2525 root     node /usr/bin/yarn start       44.1M    11.4M    13.6M    22.0M 
462908 mysql    /usr/sbin/mariadbd             24.3M   893.1M   893.4M   897.9M 
 2566 root     /usr/bin/node --preserve-sy    14.9M   127.0M   130.3M   140.9M 
 1929 www-data php /var/www/html/core/clas     8.2M     7.1M     8.4M    16.7M 
474841 www-data php /var/www/html/core/clas     8.1M    11.3M    13.1M    31.3M 
1576220 root     /usr/bin/node /var/www/html     7.9M    50.4M    54.0M    65.3M 
691034 root     /usr/bin/node /var/www/html     6.8M    45.3M    48.4M    58.5M 
  467 root     /usr/bin/python3 /usr/bin/f     1.6M    20.2M    21.1M    26.4M 
  460 redis    /usr/bin/redis-server 127.0     1.4M    19.6M    19.8M    23.9M 
2756000 root     /usr/sbin/apache2 -k start    980.0K     2.8M     5.3M    30.8M 
345543 www-data /usr/sbin/apache2 -k start    972.0K     3.1M     5.1M    31.1M 
345240 www-data /usr/sbin/apache2 -k start    972.0K     3.1M     5.1M    30.7M 
345198 www-data /usr/sbin/apache2 -k start    972.0K     3.1M     5.0M    29.9M 
345455 www-data /usr/sbin/apache2 -k start    968.0K     3.5M     6.6M    35.5M 
345420 www-data /usr/sbin/apache2 -k start    968.0K     3.5M     6.5M    35.3M 
345409 www-data /usr/sbin/apache2 -k start    968.0K     3.1M     5.1M    30.7M 
345251 www-data /usr/sbin/apache2 -k start    968.0K     3.1M     5.0M    30.6M 
117228 www-data /usr/sbin/apache2 -k start    968.0K     3.5M     5.7M    32.8M 
117227 www-data /usr/sbin/apache2 -k start    868.0K     3.5M     5.9M    32.8M 
345483 www-data /usr/sbin/apache2 -k start    852.0K     5.9M     9.1M    38.1M 
  503 root     /usr/bin/python3 /usr/share   828.0K     8.4M     9.8M    16.3M 
 2520 root     sudo STORE_DIR=/var/www/htm   600.0K     4.0K    98.0K     2.6M 
 1968 root     sudo /usr/bin/python3 /var/   600.0K     4.0K   104.0K     2.7M 
1576214 root     sudo NETATMO_LOGLVL=debug /   592.0K     4.0K   445.0K     4.2M 
691028 root     sudo /usr/bin/node /var/www   588.0K     4.0K   599.0K     4.2M 
3078046 www-data php /var/www/html/core/clas   260.0K    31.8M    34.6M    54.9M 
  434 root     /usr/sbin/cron -f             172.0K   120.0K   167.0K     2.0M 
 2565 root     /bin/sh -c node --preserve-    96.0K     4.0K    92.0K     1.4M 
592427 xxx    (sd-pam)                       12.0K     1.8M     3.5M     6.3M 
    1 root     /sbin/init                     12.0K     1.6M     4.2M     9.8M 
  451 root     /usr/sbin/ModemManager          4.0K     3.3M     4.0M     7.9M 
1667047 root     /usr/libexec/packagekitd           0     4.3M     5.8M    11.8M 
595375 root     /usr/bin/python3 /usr/bin/s        0    12.2M    12.9M    17.1M 
592524 root     -bash                              0     1.8M     2.5M     5.4M 
592519 root     su -                               0   684.0K     1.1M     4.7M 
592449 xxx    -bash                              0     1.5M     2.2M     4.8M 
592447 xxx    sshd: xxx@pts/0                  0   324.0K     1.2M     5.9M 
592426 xxx    /lib/systemd/systemd --user        0     2.2M     3.6M     8.8M 
592416 root     sshd: xxx [priv]                 0   424.0K     1.7M     8.8M 
562005 postfix  pickup -l -t unix -u -c            0     1.8M     2.3M     6.7M 
467618 root     /usr/sbin/rsyslogd -n -iNON        0     3.6M     3.8M     5.8M 
467172 postfix  qmgr -l -t unix -u                 0   700.0K   982.0K     3.0M 
467170 root     /usr/lib/postfix/sbin/maste        0   676.0K   812.0K     2.1M 
465306 ntp      /usr/sbin/ntpd -p /var/run/        0     1.3M     1.3M     3.1M 
  505 mosquitto /usr/sbin/mosquitto -c /var        0     3.0M     3.3M     8.1M 
  504 root     sshd: /usr/sbin/sshd -D [li        0   976.0K     1.4M     6.4M 
  501 root     /sbin/agetty -o -p -- \u --        0   204.0K   299.0K     1.7M 
  446 avahi    avahi-daemon: chroot helper        0   136.0K   359.0K     1.4M 
  445 daemon   /usr/sbin/atd -f                   0   208.0K   255.0K     2.1M 
  442 root     /sbin/wpa_supplicant -u -s         0     1.9M     2.0M     4.5M 
  440 root     /lib/systemd/systemd-logind        0     1.1M     1.7M     5.5M 
  438 root     /usr/sbin/qemu-ga                  0   684.0K   900.0K     3.2M 
  437 root     /usr/libexec/polkitd --no-d        0     1.1M     1.9M     5.9M 
  435 messagebus /usr/bin/dbus-daemon --syst        0  1008.0K     1.2M     3.9M 
  433 avahi    avahi-daemon: running [jeed        0   528.0K   872.0K     3.3M 
  379 root     /sbin/dhclient -4 -v -i -pf        0     1.8M     1.9M     4.7M 
  229 root     /lib/systemd/systemd-udevd         0     1.7M     1.7M     3.8M 
  209 root     /lib/systemd/systemd-journa        0    19.1M    55.6M    95.8M 
-------------------------------------------------------------------------------
   61 12                                     978.4M     1.8G     1.9G     2.5G 

Un ps axu | grep 1972 sur le processus 1972 (plugin enocean) renvoie :

# ps axu | grep 1972
root        1972  1.0  3.0 1371212 247880 ?      Sl   Jan31 304:45 /usr/bin/python3 /var/www/html/plugins/openenocean/resources/openenoceand/openenoceand.py --device /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AU04VCCR-if00-port0 --loglevel debug --socketport 55006 --callback http://127.0.0.1:80/plugins/openenocean/core/php/jeeOpenEnOcean.php --apikey xxxxxxx --cycle 0.3 --pid /tmp/jeedom/openenocean/deamon.pid

Un ps axu | grep 1670597 sur le processus 1670597 (plugin rfxcom) renvoie :

www-data 1670597  1.6  3.6 858304 300412 ?       Sl   Feb07 341:18 /usr/bin/python3 /var/www/html/plugins/rfxcom/resources/rfxcomd/rfxcomd.py --device /dev/serial/by-id/usb-RFXCOM_RFXtrx433_A1R3KR5-if00-port0 --loglevel error --socketport 55000 --serialrate 38400 --protocol 18 --callback http://127.0.0.1:80/plugins/rfxcom/core/php/jeeRfxcom.php --apikey xxxxxxx --cycle 0.3 --pid /tmp/jeedom/rfxcom/deamon.pid

Caractéristiques de la machine :

  • VM Synology sur système Synology à jour : DSM 7.2.1-69057 Update 4, Virtual Manager : 2.6.5-12202
  • OS : Debian 11 à jour
  • Jeedom : 4.3.22, tous les plugins à jour, tout au vert dans la page santé
  • plugin encoean : 2023-06-02 19:32:51
  • plugin rfxcom : 2024-01-04 01:02:50
  • RAM : 8 Go
  • Swap : 1 Go

Si quelqu’un a une idée…

Bonsoir,

Je n’ai pas d’idée, mais le même constat depuis que je suis passé sur Debian 11 avec le plugin RFXCom.
- Si je réinstalle Debian 10 et que j’utilise la même sauvegarde, je ne consomme plus de Swap (testé sur 15 jours).

D’après l’historique de la mémoire (4Go) je ne suis jamais sous les 50% (de loin même), avec un Swapiness à 10%, donc cela consomme du Swap même si « en principe » je n’ai jamais de mémoire sous le seuil fixé de son usage.

Bonjourn

Je constate de nouveau que les plugins openenocean et rfxcom provoquent une fuite mémoire important sur le Jeedom mentionné dans mon message original.

Quelqu’un sait-il si les sources de ces plugins sont disponibles sur github ? J’aimerai comprendre l’origine du problème. Ce serait plus facile en pouvant examiner les modifications du code au fil du temps plutôt que le seul code disponible sur la machine.

Pour l’instant je trouve une palanquée de plugins ici, mais pas ceux que je cherche. Connaissant très mal l’utilisation de github, je m’y prends peut-être mal. Ou ces plugins sont-ils privés ?

Bonjour,

Ce plugin, c’est l’un des rare maintenant, n’est pas disponible sur GitHub.

Je constat la même chose à travers python3 et ce plugin (au fil des jours, la consommation de mémoire virtuelle).

Hello,

Je commence juste (4 Plugins) mais aucun problème avec le rfxcom
Rpi 3 B+ => donc pas foufou en mémoire
image
Vous êtes en quel version de Python ?