Erreur script dans JSON.LUA

Forum dédié aux problématiques concernant les scripts pour DomoticZ.
Entourez votre code et les logs avec les balises nommées code grâce au bouton <\>.
e111111
Messages : 225
Inscription : 11 déc. 2018, 19:44

Erreur script dans JSON.LUA

Message par e111111 »

Bonjour,
j'ai un script de géoloc de mon tel qui ne marche pas trop mal mais me génère quantité d'erreurs dans les logs, en particulier:

Code : Tout sélectionner

2019-01-12 12:45:10.392 Error: EventSystem: Warning!, lua script /usr/local/domoticz/var/scripts/lua/script_time_checkphones.lua has been running for more than 10 seconds
et très souvent aussi ça :

Code : Tout sélectionner

2019-01-12 12:30:13.739 Error: EventSystem: in /usr/local/domoticz/var/scripts/lua/script_time_checkphones.lua: /volume1/@appstore/domoticz/var/scripts/lua/JSON.lua:1009: /volume1/@appstore/domoticz/var/scripts/lua/JSON.lua:884: Lua script execution exceeds maximum number of lines
Avez vous une idée de ce qui cause ces soucis ?
J'ai essayé d'accélérer mon script en utilisant modules.lua, mais cela ne change rien.

Merci d'avance
Domoticz V4.10 sur Synology DS216j (DSM 6.3), clef Z-Wave Sigma
garycooper
Messages : 453
Inscription : 07 août 2017, 23:58

Re: Erreur script dans JSON.LUA

Message par garycooper »

Bonjour à tous, je relance le sujet car j'ai aussi le message d'erreur suivant :
Error: EventSystem: Warning!, lua script /home/pi/domoticz/scripts/lua/script_time_bandeau_rouge_thermostat.lua has been running for more than 10
Le script concerné vise à retirer le bandeau rouge qui apparaît sur mes thermostats en comparant la valeur et en la ré-inscrivant. Apparemment il boucle mais je ne sais pas pourquoi.

Code : Tout sélectionner

--script_time_bandeau_rouge_thermostat : lecture consigne et reinjection valeur pour éviter bandeau rouge sur l'affichage

commandArray = {}


ThermostaChbreDor=84
ThermostaPool=270
ThermostaSdBE=269
ThermostatEco=281
Thermostathorsgel=161
ThermostatBuand=83
ThermostatSalon=333

local m = os.date('%M')
if (m % 30 == 0) then
--
consigneeco= string.match(otherdevices_svalues['Eco'], "(%d+%.*%d*)")
consignechbredor= string.match(otherdevices_svalues['Thermostat chambre Dorian'], "(%d+%.*%d*)")
consignepool= string.match(otherdevices_svalues['Thermostat poolhouse'], "(%d+%.*%d*)")
consignesdbe= string.match(otherdevices_svalues['Thermostat SdB enfants'], "(%d+%.*%d*)")
consignehorsgel= string.match(otherdevices_svalues['Hors gel'], "(%d+%.*%d*)")
consigneBuand= string.match(otherdevices_svalues['Thermostat buanderie'], "(%d+%.*%d*)")
consigneSalon= string.match(otherdevices_svalues['Thermostat salon'], "(%d+%.*%d*)")
--
commandArray[0] = { ['UpdateDevice'] = ThermostatEco..'|0|'..consigneeco }
commandArray[1] = { ['UpdateDevice'] = ThermostaPool..'|0|'..consignepool }
commandArray[2] = { ['UpdateDevice'] = Thermostathorsgel..'|0|'..consignehorsgel }
commandArray[3] = { ['UpdateDevice'] = ThermostaChbreDor..'|0|'..consignechbredor }
commandArray[4] = { ['UpdateDevice'] = ThermostaSdBE..'|0|'..consignesdbe }
commandArray[5] = { ['UpdateDevice'] = ThermostatBuand..'|0|'..consigneBuand }
commandArray[6] = { ['UpdateDevice'] = ThermostatSalon..'|0|'..consigneSalon }

end
return commandArray
Ca ne le fait pas à chaque exécution du script mais entre 5 et 10 fois par jour.
papoo
Messages : 2029
Inscription : 10 janv. 2016, 11:29
Localisation : Limoges (87)
Contact :

Re: Erreur script dans JSON.LUA

Message par papoo »

il est très courant sur un système aux ressources limitées style rapsberry pi que l'utilisation simultanée de plusieurs scripts et/ou de scripts nécessitant un accès au privilégié au système génère une erreur . notamment toutes les heures si vous avez paramétré la sauvegarde de bdd automatique, etc...
décalez le lancement de vos scripts afin qu'ils ne s’exécutent pas lorsque les ressources sont déjà utilisées par des fonctions gourmandes en ressources. Les script faisant appel à des ressources extérieures (API) sont aussi génératrice d'erreur de ce type, lorsque par exemple le site est inaccessible ou mets du temps à répondre.
domoticz beta/RaspBerry PI3 stretch
https://pon.fr github
garycooper
Messages : 453
Inscription : 07 août 2017, 23:58

Re: Erreur script dans JSON.LUA

Message par garycooper »

OK, merci pour ta réponse papoo ! Je vais essayer de décaler les exécutions de script.
Répondre