Aller au contenu

Chasse À L'erreur


henri-allauch

Messages recommandés

Parmi 250 lignes de code lua qui tourne comme un scheduler toute les minutes,  je reçois parfois une erreur ( toujours la même ) mais à  une fréquence très aléatoire

Style 1 mois sans erreur Parfois une erreur par semaine.         ( Ma box en 4.080 tourne depuis 147 jours sans reboot )  3 erreurs sur cette période

 

Le message ne m'aide pas pour trouver l'origine de mon erreur : 

 

[DEBUG] 04:13:00: [1;31m2016-08-04 04:13:00.784768 [ fatal] LUA error: /usr/share/lua/5.2/json/decode/util.lua:35: unexpected character @ character: 1 0:1 [Y] line:

 

[DEBUG] 04:13:00: Y

 

Avez vous une idée d'investigation ?
 

Lien vers le commentaire
Partager sur d’autres sites

J'ai exactement le même problème cela intervient sur absolument toutes mes scènes et de façon totalement aléatoires. Il est évident que le caractère @ n'est pas présent dans les scripts et la ligne signalée est semble-t-il correcte. Bref, je suis comme toi, je sèche et preneur de la solution si elle existe.

 

J'ai mit en place une scène de surveillance qui est appelé toutes les minutes par un module virtuel pour redémarrer les scènes quand elles plantes... ça fonctionne bien, sauf que cette semaine c'est la scène de surveillance qui a planté. Et là  où je ne comprend pas c'est que ma scène étant appelée par un module virtuel toutes les minutes, ça ne devrait pas poser de problèmes, et pourtant elle ne s’exécute plus alors que le module virtuel l'appel toujours. Bref, j'en perd mon latin sur cette anomalie....

Lien vers le commentaire
Partager sur d’autres sites

si le problème semble se présenter chez plusieurs, un petit mail au support avec le code de la scène et l'erreur ... On ne sait jamais dès fois que le stagiaire du mois d'août veut faire du zèle et chercher/expliquer comment interpréter cette erreur

  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

@jojo

Je ne pense pas a la ligne 35 de mon code car j'ai ajouté justement des lignes pour voir si l'erreur se déplaçait 

Je pense plutôt à  la ligne 35 de la librairie util.lua mais ce n'est qu'une supposition

Quand au support je me refuse à  ce qu'il mettent les mains dans mes scènes, comte tenu qu'ils ne sont pas toujours très doués avec leur propre code.

@indyana

Moi ( pour le moment) cela ne se produit que sur une scène qui tourne en boucle, les autres scène on une action furtive sur l'évènement et se termine.

Lien vers le commentaire
Partager sur d’autres sites

je comprends que tu ne leur fasse pas confiance pour un accès remote.

Mais rien ne t'empèche de leur envoyer le code d'une des scène qui pose problème.

Libre àtoi ensuite d'implémenter ou pas leurs recommandations (s'il y en a qui arrivent ...)

Lien vers le commentaire
Partager sur d’autres sites

le debug est pour la prochaine stable ;-)

 

@Indyana, tu parles d'une scene de surveillance qui relance tes scenes ;-) mais qui a planté.

Tu as essaye le WATCHDOG de @Lazer, il ne plante pas et relance SCENE et VD

Lien vers le commentaire
Partager sur d’autres sites

Le WATCHDOG de Lazer plante de la même façon que les autres, je le sais je l'ai déjàessayée! Je pensais ma méthode plus robuste du fait que la scène n'est pas géré dans une boucle ou un timeout, mais appelée depuis un VD (sans boucle). Bah nan.

Je suis du même avis qu'Henri, c'est la bibliothèque util.lua qui a probablement un problème, Si ils réglaient ce bug, ça me fiabiliserait ma box à90%, attendons voir leur retour.

Lien vers le commentaire
Partager sur d’autres sites

Pour être optimiste, ce n'est peut être pas un bug proprement dit dans util.lua, mais à  la ligne 35 il y a detection de quelque chose d'incorrect ( paramètre incorrect  ?) .... mais leur message ne nous permet pas de remonter à  l'origine. 

Ce qui nous intéresse c'est de savoir quoi et où ... pour que nous puissions débuger nos propres erreurs

Si on est Pessimiste vu la fréquence et à  priori la diversité des codes incriminés il faudra aussi à  apprendre à  vivre avec !!!!!

 

Je viens de voir qu'on en parle déjà  ici http://www.domotique-fibaro.fr/index.php/topic/5629-catcher-une-erreur-lua/   23/08/2015

 

Je vais lire en profondeur mais je crois que c'est resté sans solution

Lien vers le commentaire
Partager sur d’autres sites

  • 2 semaines après...
  • 3 semaines après...

Ce genre d'erreur est assez fréquent lorsque l'on reçoit un flux json qui n'a pas été correctement fini (latence réseau, micro-coupure, ...)

 

Pour éviter de planter le tout, j'utilise personnellement le pcall : http://www.lua.org/pil/8.4.html

Lien vers le commentaire
Partager sur d’autres sites

OK cela explique la rareté de l'erreur, qui ne s'est pas reproduite depuis. 

Je prend en compte ton conseil, Merci

 

Pour info je n'ai jamais eu de retour Fibaro malgré l'enregistrement du support  : Case Notification for #54206

Lien vers le commentaire
Partager sur d’autres sites

×
×
  • Créer...