Memoire insuffisante sur Atlas et instruction Sleep dans un scénario

Bonjour,

J’ai fait des scénarios avec des « Sleep » parce que j’ai besoin de tempo, et depuis, j’ai de temps en temps des alertes mémoire avec processus tués:


J’ai des mises à jour à faire, mais j’attends un peu, elles sont récentes, et l’expérience m’a appris à ne pas me précipiter sur les MAJ. Je préfère attendre qu’elles soient vraiment stabilisées.

Ci-dessous enregistrement charge CPU:


Je vois que ca peut monter à plus de 20, mais je ne crois pas avoir plus de 2 ou 3 scénarios avec des « sleep » qui devraient se lancer à la fois.

Pourquoi les instructions « Sleep » peuvent interférer avec la charge CPU ?
Est-ce qu’on peut utiliser à la place des instructions pause, ou autre chose pour faire l’équivalent?

Salut

Combien de temps dure vos sleeps?

Antoine

Peut etre la solution est elle mal pensée.
Car mettre du sleep c vraiment le truc ultime a faire!

Ils durent entre 3 et 100 s suivant les cas.
Je les utilise en particulier pour cet exemple.

Le plugin jeelink ou mqttmanager ne permettent pas de vérifier ce genre d’info? Car avec le peu d’info donnée, cela semble pas très adapté comme usage.

Oui dc y a aucune raison de faire un sleep

Bonjour Iperenna,

Beaucoup de mes scénarios sont liés à la gestion des lumières ou typiquement, je vais éteindre après 1 ou 2 mn. J’utilise parfois des stateDuration, parfois des capteurs virtuels, ou d’autres systèmes, mais aussi parfois des tempo sleep. Si je veux faire clignoter chaque second une lampe par exemple, comment faire autrement ?

Ca m’intéresses aussi de comprendre pourquoi un sleep qui ne devrait pas consommer de puissance CPU fini par générer un manque de mémoire.

Qui a dit qu’un sleep ne devait pas consommer ?
Pendant 1 sleep tout le scenario et son contexte sont bloqué

C’est dc bien la maniere d’aborder les choses qui n’est pas bonne.

Un sleep doit rester exceptionnel

J’utilise aussi un clignotement dans un scenario, avec un sleep. Si il y a une solution pour avoir l’effet autrement je suis preneur aussi.
C’est dommage que la fonction « DANS » ne puisse pas fractionner les minutes car là aussi comment post-poser une action de trente seconde par exemple ?
Peut-être que la solution à ces 2 questions serait un calcul à l’instant T genre
A [(maintenant(hh:mm:ss) + 00:00:30] FAIRE
?

Je comprends qu’une instruction sleep peut consommer de la mémoire, surtout si toutl l’environnement est conservé ce que je n’avais pas en tête, mais d’un point ce vue CPU, il n’y a rien à faire d’autre qu’attendre non?

Si c’est un problème de mémoire, pourquoi le swap n’a pas été consommé ?
Sur le graphe ci-dessous, il reste à plus de 50% tout le temps.

Jeedom est basé en général sur la crontab donc on travaille à la minute pas à la seconde.

De plus une domotique est censée déclencher des actions en fonction de valeurs remontées par des capteurs…

Donc le besoin à la seconde…

Rien ne prouve que c’est à cause de ces scénarios avec des sleep

En plus je n’ai pas de tooltip comme toi a mémoire suffisante

Tu es sur d’être à jour ?
Meme si jeedom ne propose pas de mise a jour ?

Ma page santé dit que mon système est à jour:

Après, au niveau linux, il y a probablement des choses à faire.
Si je lance les commandes ci-dessous, est-ce que je conserve la garantie et l’assistance de l’équipe Jeedom ?

sudo apt clean
sudo apt update
sudo dpkg --configure -a
sudo apt install -f
sudo apt full-upgrade
sudo apt autoremove --purge

Bonjour,

garantie et assistance ou pas, dans tous les cas, il est très vivement fortement conseillé de ne pas modifier soi-même le système sur une Box Jeedom.

Un problème => un ticket.

akenad :slight_smile:

Bonjour,

En fait cette alerte compte le nombre de lignes qui résultent de cette commande :

sudo dmesg | grep oom | grep -v deprecated

oom = Out Of Memory

ça vous donnera peut-etre les explications mais surtout les timings des problèmes de mémoire, ensuite vous pouvez voir les lignes avoisinant ces oom…

car là vous partez peut-etre d’un a priori faux = que ça vient des sleeps de vos scénarios

Sinon pour les sleep remplacez par des « dans »

Merci, je vais regarder les lignes autours de oom à la prochaine occasion.
Comme j’ai rebouté récemment pour une autre raison, je ne trouve plus d’occurrence oom.