Swap diminue en permanence

Bonjour, Je rencontre depuis un long moment des chutes de swap comme le montre l’historique ci dessous:

Suite à plusieurs lecture de post j’ai pu comprendre que la fuite de mémoire venait probablement de plugin codé en python. Le reboot de certain Démon permettait de récupérer de la mémoire.
J’ai viré le plugin XIAOMI qui était souvent incriminé (tout est passé en z2m)

J’ai d’autre part réalisé un scenario permettant de reboot certain démon de plugin toutes les nuits.
image

image
En redémarrant les démons des plugin 1 par 1 j’ai pu constater ce qui me rendais de la mémoire mais si certain ne sont pas en python.

Si certain personne pourrait m’aider à comprendre ce qu’il se passe. Je vous en remercie d’avance

A tout hasard, tu peux lancer en SSH

sudo journalctl --disk-usage

Avoir autant de swap utilisé alors que tu as 49% de mémoire dispo et un swapiness à 10% est étrange

Norbert

1 « J'aime »

Bonjour Norbert. Merci de te pencher sur mon cas.
Actuellement je ne suis pas a mon domicile.
En passant par OS/DB je peux te donner ceci.

image

Est ce que cela répond a ton besoin ?

Oui, du coup, regarde ce post : Taille du répertoire /var/log énorme. Debian 11 et 12
Et mets en place les précos poru avoir un journal de 200Mo plutôt que 1Go

Norbert

1 « J'aime »

Bonjour, je me pose une question par rapport a ce problème, j’ai une smart et une atlas, sur l’une j’ai ceci :

Archived and active journals take up 1.2G in the file system.

sur l’atlas ceci :

e[0;1;38;5;185mJournal file /var/log/journal/736dbda275634e9d985f9e5ae956b2a2/system.journal is truncated, ignoring file.e[0m
Archived and active journals take up 38.6M in the file system.

Pourquoi y a t’il une différence de configuration entre les 2 alors que les boys sont toutes les 2 sur Debian 11 avec image officielle.

Quels sont tes paramètres dans /etc/systemd/journald.conf sur chacun des serveurs ? notamment SystemMaxUse et MaxRetentionSec

Le pb est aussi peut-être lié au fait que tu as plus de logs d’un coté que de l’autre

Norbert

sur la smart ou l’atlas ?

les 2, pour comparer

Puis je effectuer ces commandes depuis OS/DB ou uniquement via ssh ?

est ce que je peux faire ça directement depuis jeedom ? ou faut passer en SSH ? je peux accéder en SSH uniquement sur l’atlas car la smart n’est pas chez moi

oui, via OS/DB >> _administration systeme

grep -E "SystemMaxUse|MaxRetentionSec" /etc/systemd/journald.conf
1 « J'aime »

Non, il faut éditer le fichier, donc à faire en SSH, c’est quand meme plus simple

1 « J'aime »

atlas :

SystemMaxUse=20M
#MaxRetentionSec=

smart :

#SystemMaxUse=
#MaxRetentionSec=

D’apres Loic le problème avait été pris en compte

Le problème de swap que j’avais sur l’atlas était du a python et non ce problème de log, par contre sur la smart c’est bien de connaitre cette modification a faire car sur la smart qui n’est pas chez moi j’ai pas mal galéré avec le swap aussi… Merci

Donc sur la smart, rien n’est paramétré

1 « J'aime »

pour résumé sur la smart il faut faire ceci en ssh :

Pour éditer le fichier tu fais

sudo nano /etc/systemd/journald.conf

tu modifies la ligne et tu enregistres le fichier CTRL + X

Attend quand même la confirmation de @ngrataloup car je n’ai pas testé encore

Ben oui c’est exactement ça.

Et on ne peut pas le faire de Jeedom, il faut un vrai accès ssh et être root

1 « J'aime »

donc si root pas besoin de mettre sudo , juste :

nano /etc/systemd/journald.conf

Ca serait quand même bien que jeedom fasse la modification directement pour toutes les smart.

La bonne pratique, ca reste une connexion ssh via le user jeedom puis un sudo :sweat_smile: (abus de language quand on dit qu’il faut etre root)

et repettre ce que tu as sur l’atlas doit convenir

donc juste SystemMaxUse=20M
puis systemctl restart systemd-journald
ou reboot

EDIT : via jeedom ( OS/DB >> _administration systeme), ceci doit marcher …

sudo sed -i.bak 's/^#SystemMaxUse=.*/SystemMaxUse=20M/' /etc/systemd/journald.conf
sudo sed 's/^#MaxRetentionSec=.*/MaxRetentionSec=1w/' /etc/systemd/journald.conf

puis pour vérifier

more /etc/systemd/journald.conf

et pour prendre en compte la modif

sudo systemctl restart systemd-journald
1 « J'aime »

sur la smart ça donne ceci après avoir fait les 2 commandes sudo

::::::::::::::
/etc/systemd/journald.conf
::::::::::::::
#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.
#
# Entries in this file show the compile time defaults.
# You can change settings by editing this file.
# Defaults can be restored by simply deleting this file.
#
# See journald.conf(5) for details.

[Journal]
#Storage=auto
#Compress=yes
#Seal=yes
#SplitMode=uid
#SyncIntervalSec=5m
#RateLimitIntervalSec=30s
#RateLimitBurst=10000
SystemMaxUse=20M
#SystemKeepFree=
#SystemMaxFileSize=
#SystemMaxFiles=100
#RuntimeMaxUse=
#RuntimeKeepFree=
#RuntimeMaxFileSize=
#RuntimeMaxFiles=100
#MaxRetentionSec=
#MaxFileSec=1month
#ForwardToSyslog=yes
#ForwardToKMsg=no
#ForwardToConsole=no
#ForwardToWall=yes
#TTYPath=/dev/console
#MaxLevelStore=debug
#MaxLevelSyslog=debug
#MaxLevelKMsg=notice
#MaxLevelConsole=info
#MaxLevelWall=emerg
#LineMax=48K
#ReadKMsg=yes
#Audit=no

Ca a l’air d’être ok ! Merci j’ai récupéré 9% de stockage en plus :slight_smile:

1 « J'aime »