souci de demarrage

Posez ici vos questions d'utilisation, de configuration de DomoticZ, de bugs, de conseils sur le logiciel lui même dans son utilisation et son paramétrage.
Des forums spécifiques sont ouverts ci-dessous pour regrouper les différents sujets.
chrisb13
Messages : 17
Inscription : 14 nov. 2019, 06:35

souci de demarrage

Message par chrisb13 »

bonjour
voici mon souci
a chaque demarrage ou reboot je n ai pas acces a l interface domoticz par l adresse reseau
donc j ouvre ssh je tape
cd dev-domoticz
puis sudo ./domoticz
il me donne plein d infos et c est a ce moment la que j arrive a acceder a l interface web, seul souci c est que si je ferme le ssh page inaccessible
je ne sais pas quoi faire pour ne plus avoir a faire ceci
pi 4
domo 4.11626
zigate usb 3.1a/rfplayer
inter livolo
xiaomi aqara
gestdomvel
Messages : 7
Inscription : 23 déc. 2019, 19:47

Re: souci de demarrage

Message par gestdomvel »

Bonjour,

Je rencontre un problème similaire avec mon Rpi 3B+. Après le boot du Rpi correctement configuré (SSH, IP fixe, etc.), je n'accède pas à la page de Domoticz en SSH alors que j'accède sans difficulté au Rpi.
Après le boot, Domoticz envoie par SMS (j'ai paramétré cet envoi dans ma configuration) de nombreuses erreurs dont voici quelques lignes :
2020-02-15 08:03:37.244 Error: mainworker seems to have ended or hung unexpectedly (last update 72828.000000 seconds ago)
2020-02-15 08:03:37.245 Error: Domoticz(411) is exiting due to watchdog triggered...
En tapant

Code : Tout sélectionner

sudo service domoticz.sh status
, j'obtiens :

● domoticz.service - LSB: Home Automation System
Loaded: loaded (/etc/init.d/domoticz.sh; generated)
Active: active (exited) since Fri 2020-02-14 11:49:50 CET; 20h ago
Docs: man:systemd-sysv-generator(8)
Process: 377 ExecStart=/etc/init.d/domoticz.sh start (code=exited, status=0/SU

févr. 14 11:49:48 raspberrypi systemd[1]: Starting LSB: Home Automation System..
févr. 14 11:49:50 raspberrypi domoticz.sh[377]: 2020-02-14 11:49:50.784 Status:
févr. 14 11:49:50 raspberrypi domoticz.sh[377]: 2020-02-14 11:49:50.793 Status:
févr. 14 11:49:50 raspberrypi domoticz.sh[377]: 2020-02-14 11:49:50.794 Status:
févr. 14 11:49:50 raspberrypi domoticz.sh[377]: domoticz: Domoticz is starting u
févr. 14 11:49:50 raspberrypi domoticz[394]: Domoticz is starting up....
févr. 14 11:49:50 raspberrypi domoticz[411]: Domoticz running...
févr. 14 11:49:50 raspberrypi systemd[1]: Started LSB: Home Automation System.
févr. 15 08:04:05 raspberrypi domoticz[411]: Domoticz stopped...
lines 1-15/15 (END)...skipping...

J'en comprends que Domoticz démarre puis s'arrête tout seul. Enfin, pas tout à fait car lorsque je relance Domoticz avec la commande
sudo service domoticz.sh start
, Domoticz ne fonctionne toujours pas. Il faut que je stoppe d'abord par la commande
sudo service domoticz.sh stop
puis que je relance par
sudo service domoticz.sh start
pour que Domoticz fonctionne enfin normalement.
Pour info également, j'ai refait trois fois l'installation du Rpi et de Domoticz, rien n'y fait. Toujours le même comportement !

Quelqu'un peut-il me dire pourquoi et surtout comment y remédier.

Merci d'avance
andpierard
Messages : 26
Inscription : 09 avr. 2019, 20:17

Re: souci de demarrage

Message par andpierard »

Bonsoir,
Avez vous trouvé une solution à ce problème ?
J'ai pu constater que cette erreur affecte le boot de mon système de façon sporadique sans que je puisse en déterminer les raisons. Comportement très dérangeant quand un sytème en remote ne reboote pas complètement après une coupure de courant.
Jean Pierre
Messages : 11
Inscription : 21 janv. 2020, 11:57

Re: souci de demarrage

Message par Jean Pierre »

pas de solution mais quelques pistes :
-changer de version domoticz ?
- changer la carte SD ?
thier
Messages : 807
Inscription : 26 sept. 2015, 10:32
Localisation : charente

Re: souci de demarrage

Message par thier »

Le problème vient du fait de la mise à l'heure de raspbian au démarrage. C'est pour ça que watchdog arrête domoticz (last update 72828.000000 seconds ago).
La solution que j'ai adopté est de modifier domoticz.sh pour qu'il attende la mise à l'heure avant de lancer domoticz. Une autre solution est d'ajouter une horloge rtc.
PI3+, Buster, Domoticz V2020.2, rflink, zwave, chauffage piloté par qubino, sondes oregon et Vil1d, boite aux lettres détection passage facteur, volets roulants qubino fibaro.
thier
Messages : 807
Inscription : 26 sept. 2015, 10:32
Localisation : charente

Re: souci de demarrage

Message par thier »

La modification de /etc/init.d/domoticz.sh pour attendre la mise à l'heure avant de lancer domoticz:
ouvrir /etc/init.d/domoticz.sh avec sudo nano /etc/init.d/domoticz.sh.
remplacer

Code : Tout sélectionner

# Function that starts the daemon/service
#
do_start()
{
        # Return
        #   0 if daemon has been started
        #   1 if daemon was already running
        #   2 if daemon could not be started
        start-stop-daemon --chuid $USERNAME --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \
                || return 1
        start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \
                $DAEMON_ARGS \
                || return 2
}
par

Code : Tout sélectionner

# Function that starts the daemon/service
#
do_start()
{

# Wait For Time Synchronization
while [ "$(timedatectl status | sed -n 's|^System clock synchronized: \(.*\)|\1|p')" != "yes" ]
do
  echo -n "."
  sleep 1
done
echo "" 
#fin de Wait For Time Synchronization

        # Return
        #   0 if daemon has been started
        #   1 if daemon was already running
        #   2 if daemon could not be started
        start-stop-daemon --chuid $USERNAME --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \
                || return 1
        start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \
                $DAEMON_ARGS \
                || return 2
}
Le principe:
En tout début du script de démarrage, le script va attendre que la réponse à la commande timedatectl status soit yes sur la ligne System clock synchronized:

Attention à l'effet pervers. S'il n'y a pas de connexion internet pour synchroniser l'heure, domoticz ne démarrera jamais.
Dernière modification par thier le 29 avr. 2020, 11:14, modifié 1 fois.
PI3+, Buster, Domoticz V2020.2, rflink, zwave, chauffage piloté par qubino, sondes oregon et Vil1d, boite aux lettres détection passage facteur, volets roulants qubino fibaro.
Chrominator
Messages : 1042
Inscription : 19 déc. 2015, 07:29
Localisation : France

Re: souci de demarrage

Message par Chrominator »

Alors là chapeau bas, je n'ai pas eu le symptôme mais je pense que je n'aurais pas trouvé la cause.

Tu as raison sur l'effet pervers, mais d'un autre côté, que Domoticz ne démarre pas pour cause de liaison Internet défectueuse ou parce que le watchdog l'arrête, ça fait pas une grosse différence. Au moins avec ta soluce il y a une chance pour que ça démarre normalement.

On peut aussi utiliser monit (un autre chien de garde du bestiaire) qui va relancer le service s'il manque à l'appel, quelque soit la cause. Et avec lui ça marche aussi si l'arrêt a lieu à un autre moment que le boot.

Image

En dernier, mais sans que je ne l'ai jamais expérimenté, en théorie on pourrait utiliser les tags LSB.
Ils permettent de définir notamment quelles fonctionnalités doivent être déjà initialisées avant de lancer un nouveau service, et précisent ainsi l'ordre du boot.

Pour domoticz, c'est dans /etc/init.d/domoticz.sh ce qui suit :

Code : Tout sélectionner

### BEGIN INIT INFO
# Provides:          domoticz
# Required-Start:    $network $remote_fs $syslog
# Required-Stop:     $network $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Home Automation System
# Description:       This daemon will start the Domoticz Home Automation System
### END INIT INFO
Il est possible qu'en ajoutant le tag $time dans Required-Start, on ait le même résultat qu'avec la modif de ton script (et le même effet pervers).
Un bon frein vaut mieux que deux sparadraps.

Ubuntu 24.04.3 LTS - Domoticz 2025.1 (build 16782)
Pentium G3220T 2.6GHz - 4Go DDR3
RFXtrx433 USB Ver Pro1/1043
Z-Stick GEN5 Version: 1.6-1136-g07ea22bb
Rtl433 RTL-SDR receiver
RFLink Gateway
Zigbee SLZB-06
Chrominator
Messages : 1042
Inscription : 19 déc. 2015, 07:29
Localisation : France

Re: souci de demarrage

Message par Chrominator »

Un petit aperçu de mon monit sur mon raspi ubuntu pour Domoticz :

Screenshot_2020-04-29 Monit phoenix.png
Screenshot_2020-04-29 Monit phoenix.png (32.14 Kio) Consulté 7717 fois
Un bon frein vaut mieux que deux sparadraps.

Ubuntu 24.04.3 LTS - Domoticz 2025.1 (build 16782)
Pentium G3220T 2.6GHz - 4Go DDR3
RFXtrx433 USB Ver Pro1/1043
Z-Stick GEN5 Version: 1.6-1136-g07ea22bb
Rtl433 RTL-SDR receiver
RFLink Gateway
Zigbee SLZB-06
Goa_From_Gaia
Messages : 14
Inscription : 15 févr. 2020, 22:00

Re: souci de demarrage

Message par Goa_From_Gaia »

Salut Chrominator.

J'ai une question relative à monit, dont je ne saisi pas le sens.
Monit est un daemon de monoting des process (ou autres). Seulement les signaux sont ils envoyés à monit ou lui même doit aller les chercher auprès des services?
Ce que je veux dire par là, c'est que si l'un des process tombe (error) monit le catch directement ? ou alors monit doit faire une ronde (test) pour aller récupérer le status du process?
Dans le cas ou Monit fait des test à des intervalles, et que ceux ci soient trop écartés, qu'un des service tombe et se relance rapidement, il ne soit pas en mesure de détecter l'erreur?
Chrominator
Messages : 1042
Inscription : 19 déc. 2015, 07:29
Localisation : France

Re: souci de demarrage

Message par Chrominator »

Monit "inspecte" les process en fonction des paramètres qu'on a défini, et à une fréquence qui est spécifiée dans son fichier /etc/monit/monitrc

Code : Tout sélectionner

set daemon 60

Là c'est revue des process à chaque minute.
Goa_From_Gaia a écrit : 23 mai 2020, 01:09 Dans le cas ou Monit fait des test à des intervalles, et que ceux ci soient trop écartés, qu'un des service tombe et se relance rapidement, il ne soit pas en mesure de détecter l'erreur?
Ça arrive sûrement.
Comme il arrive aussi que monit détecte une défaillance qui ne se reproduise pas au check suivant ; en général on ne paramètre pas monit pour une action sur un déclencheur unique, c'est lorsque le défaut se répète qu'on effectue l'action.

Exemple de mon paramétrage pour Domoticz :

Code : Tout sélectionner

# Domoticz
   check process domoticz with pidfile /var/run/domoticz.pid
   start program = "/etc/init.d/domoticz.sh start"
   stop  program = "/etc/init.d/domoticz.sh stop"
   if failed
      url http://127.0.0.1:8080/json.htm?type=command&param=getversion with timeout 20 seconds
          and content = '"status" : "OK"'
      for 2 cycles then restart
   if cpu usage > 70% for 3 cycles then restart
   if 2 restarts within 2 cycles then exec "/sbin/reboot"
Un bon frein vaut mieux que deux sparadraps.

Ubuntu 24.04.3 LTS - Domoticz 2025.1 (build 16782)
Pentium G3220T 2.6GHz - 4Go DDR3
RFXtrx433 USB Ver Pro1/1043
Z-Stick GEN5 Version: 1.6-1136-g07ea22bb
Rtl433 RTL-SDR receiver
RFLink Gateway
Zigbee SLZB-06
Répondre