Problème reboot de jeedom et restauration du cache

Bonjour à tous

Ayant toujours des soucis de swap qui ne trouve pas de solution, j’ai du rebooter ma smart.

Il faut compter combien de temps pour que jeedom reviennent à la normal ?

j’ai encore des Modes qui n’affiche pas leur état

image

des virtuels dont les commandes info avec une valeur sont vide…

image

et le réseau zwave qui n’a pas les bons états des prises (mon frigo et ma chaudière sont bien en ON)

image

les valeurs ne sont pas remontées, alors les commandes sont vides

pourtant le réseau zwave ne fait plus rien

image

là je pense qu’il faut attendre le reveil de chaque module, ce sont des modules sur prise, cela devrait pouvoir se faire dès la relance du zwave. Ou au moins qu’au reboot, les valeurs des commandes soient remises comme avant l’arrêt.

EDIT : 1H que le reboot à eu lieu et Jeedom n’est pas opérationnel.
puis-je encore espérer un retour à la normal ?
Ou il va falloir une nouvelle fois que je me retape la sauvegarde manuellement de tous mes virtuels ?

Bonjour,

Ce problème est dû à un problème de cache. Pour une raison que je ne connais pas, le cache de Jeedom ne s’est pas restauré au redémarrage (il ne faut surtout pas le vider).

Il faut juste attendre, que ce qui mets à jour vos virtuels, s’exécute. Ne faites pas de restauration, dans le pire des cas, il faut relancer les scénarios (si c’est le cas) qui mettent à jours ces informations là.

Bonjour @Fabrice

Je n’ai pas vidé le cache et ce n’est pas la 1er fois que je me fais avoir

le soucis c’est que rien ne va mettre à jour mon virtuel, ce sont de simples commandes infos avec une valeur fixe

mais à l’affichage elles sont vide :

image

seule solution que je connaisse, ouvrir le virtuel et le sauvegarder, c’est chiant et long.

il faudrait que ces commandes se réinitialisent toutes seuls, c’est même pas un problème de cache là.

après pour les modes par exemple, oui c’est surement un problème de cache

certains sont revenus, d’autres toujours pas

le mode est vide !

image

En fait, votre solution : ouvrir le virtuel et le sauvegarder
Reviens à rafraichir la commande d’origine qui alimente ce virtuel.
C’est comme cela que je procède (j’ai constaté (sur un Rpi) que deux reboots continue, vident le cache). Il faut que la commande qui alimente la tuile, se mette à jour.

la tuile a déjà été mise à jour pour d’autre commande, comme le niveau sonore (38DB) qui vient du plugin NETATMO mais pas ces commandes infos

image

bonjour,

si c’est a chaque reboot, vu que tu es sur smart ça vaut peut-etre le coup d’ouvrir un ticket au support.

avec un probleme reproductible ils arriveront surement a trouver la cause.

J’en ai refait un ce matin, mais c’est déjà la 2eme fois que je remonte ce prb

qqun saurait si il est possible de sauvegarder un virtuel par un bout de code ?

Essaye :

eqLogic::byId(xxx)->save();

J’ai trouvé ce code de @naboleo

#Sauvegarde des infos ou restauration à partir des variables (avec suffixe -backup)

foreach(cmd::all() as $cmd) {
  if($cmd->getType()=="info"){
    $name=$cmd->getHumanName();
    if(substr($name,strlen($name)-8,8)=="-backup]")
    {
      $val=$cmd->execCmd();
      $var = "#".$name."#";
      $valbckp=$scenario->getData($var);
      if($val == 0)
      {
        $scenario->setLog('Restauration de : ' . $name.' Valeur='.$valbckp);
        $cmd->event($valbckp);
      }
      else if ($val != $valbckp)
      {
        $scenario->setLog('Backup de : ' . $name.' Valeur='.$val);
        $scenario->setData($var, $val);
      }
    }
  }
}

ca sauvegarde toutes les commandes infos dans une variable c’est ça ?
et les restaurent ?

je test ca, merci

En principe, c’est automatiquement réalisé par Jeedom. C’est le cache.

C’est physiquement ici :
-rwxrwxr-- 1 www-data www-data 109918 May 20 17:30 /var/www/html/cache.tar.gz

Ce fichier doit être chargé au redémarrage de Jeedom et ainsi, c’est transparent pour nous.

sauf que le résultat ne semble pas parfait vu ma situation

le fichier est bien présent

-rwxrwxr-- 1 www-data www-data 597778 May 20 16:00 cache.tar.gz

Chez moi, cela semble se mettre à jour toutes les 30 minutes (du moins les informations du fichier).

Ce qui est déjà arrivé chez moi, c’est que le redémarrage se fasse en 2 temps, un 1er qui ne vas pas jusqu’au bout et hop, un autre redémarrage derrière. Alors, j’ai aussi perdu ce fichier (j’ai lu qu’il faut 10 minutes pour qu’il se construise, donc, j’en déduis 10 minutes entre 2 redémarrage).

mais je n’ai fait qu’un seul reboot

comment savoir si ce fichier à bien été chargé ?
ou si il est possible de relancer son chargement après le démarrage ?

Moi (mais cela demande confirmation de plus calé que moi), j’ai compris que ce fichier était chargé au démarrage. Et c’est ce chargement qui fait que l’on ne perd rien (c’est bien pensé pour le coup).

Mais, si chez vous tout est vide, c’est que le chargement n’a pas eu lieu. Je ne connais pas la raison. Chez moi, j’ai systématiquement eu ce problème quand j’avais mis une enceinte, qui a une alimentation en USB, sur le hub USB de mon installation Jeedom.
=> Dès que j’ai remis cette enceinte sur sa propre alimentation, je n’ai plus eu ce problème.

Je m’en suis rendu compte en faisant un ping en continue sur le Raspberry (ping 192.168.x.x -t) et j’ai bien vue la réponse aux pings, puis de nouveau l’absence de réponse et enfin, la reprise pour de bon.

Ce qui, dans mon cas, m’a mis la puce dans l’oreille, c’est le petit bruit que fait l’enceinte sur le Rpi qui redémarre, j’avais 2 fois ce bruit au lieu de 1 seule fois.
Depuis, le problème n’est plus jamais revenue.

Alors là cela dépasse mes compétences également :slight_smile:

je vais attendre la réponse du support ou si un expert passe dans le coin.

Salut
ça fait la copie des commandes info dont le nom se termine par -backup et dont la valeur en mémoire est différente.
Si cette la commande est à 0, ça restaure l’ancienne valeur à partir de celle issue du backup.

Donc il faut potentiellement lancer ce même bloc : au démarrage et à l’arrêt de jeedom

@Fabrice: Personnellement cette attente de 10min (perso dans le code j’ai pas vu cette valeur), ça me gêne :

  • il n’y a pas d’information qui indique quand la restauration est faite (ou pas faite)
  • il n’y a pas de mécanisme pour mettre en attente les traitements jeedom…

Donc dans les cas où les données sont perdues … on a potentiellement 10 minutes où jeedom fait n’importe quoi (à cause des valeurs faussées) et rien pour y parer

De mon coté, j’ai pas noté de soucis de démarrage à cause de l’alim, mais plutot des soucis de droits (root partout)… Donc forcement pour jeedom (www-data), c’est pas bon…et ça dure plus que 10 min

Merci pour ta réponse

Il y a ce problème de cache, et même plusieurs heures après la relance, rien n’avait changé, j’ai du valider manuellement certaines commandes actions et les modes qui étaient vide.

Il faudrait en effet pouvoir réintégrer manuellement la sauvegarder du cache et comme tu les dis avoir l’info si cela a été fait ou non par le système

Ce qui me gène le plus c’est le soucis des commandes infos qui contiennent une valeur fixe, l’info est dans le système mais la commande est initialisée a vide «  », c’est pas normal.

Du coup j’ai fait un scénario qui test mes commandes critiques et lance la sauvegarde du virtuel si la commande est vide, mais ça reste du bricolage.

En espérant que Jeedom se penche sur cette problématique

Merci à tous pour vos réponses

Bonjour @Jeandhom

malheureusement ce code ne semble pas fonctionner : eqLogic::byId(ID)->save();

la commande info qui est contenu dans ce virtuel reste vide