#14 Supervise cron task

Closed
opened 3 years ago by maxime-alves · 5 comments

Vérifier l’interval de temps du polling au superviseur.

Créer la tâche cron qui permet de lancer le polling.

Vérifier l'interval de temps du polling au superviseur. Créer la tâche cron qui permet de lancer le polling.
maxime-alves added the
system
label 3 years ago
maxime-alves commented 3 years ago
Collaborator

Voir les fichiers “.timer” dans l’archive

http://www.freepoteries.fr/~msleaveamix/pyheatpump.tar.gz

Voir les fichiers ".timer" dans l'archive http://www.freepoteries.fr/~msleaveamix/pyheatpump.tar.gz
maxime-alves commented 3 years ago
Collaborator

Si la requête HTTP échoue (pas de réponse où timeout), la variable “last_update” ne doit pas être mise à jour.

Si la requête HTTP échoue (pas de réponse où timeout), la variable "last_update" ne doit pas être mise à jour.
maxime-alves commented 3 years ago
Collaborator

34a2f0c49d

Lorsque le flag since est passé, la variable supervisor.last_update est utilisée pour déterminer l’intervalle de temps à utiliser pour la selection des valeurs ([last_update, now]).

Lorsque le serveur de supervision répond à la requête avec un code http 200, la variable last_update est mise à jour au timestamp présent dans la configuration.

Il est donc possible de récupérer la dernière date de mise à jour effective avec une requête GET sur /config/last_update .

https://git.yannweb.net/maxime-alves/pyHeatpump/commit/34a2f0c49d577cc82bdfe7996def2bd905e130a7 Lorsque le flag **since** est passé, la variable **supervisor.last_update** est utilisée pour déterminer l'intervalle de temps à utiliser pour la selection des valeurs (*[last_update, now]*). Lorsque le serveur de supervision répond à la requête avec un code http **200**, la variable **last_update** est mise à jour au timestamp présent dans la configuration. Il est donc possible de récupérer la dernière date de mise à jour effective avec une requête GET sur /config/last_update .
maxime-alves commented 3 years ago
Collaborator

Les requêtes font des timeout depuis la dernière release (2020-12-16_rpios-buster_pyheatpump-26bdba4.img.xz.md5sum)

L’inversion du signe de comparaison dans variable_value.get est peut-être responsable de ce timeout.

Le temps de timeout est de 3 minutes.

Les requêtes font des timeout depuis la dernière release (2020-12-16_rpios-buster_pyheatpump-26bdba4.img.xz.md5sum) L'inversion du signe de comparaison dans variable_value.get est peut-être responsable de ce timeout. Le temps de timeout est de 3 minutes.
maxime-alves commented 3 years ago
Collaborator

Mise à jour du service :

Nous n’utilisons plus config/pyheatpump_supervise.service , la commande est maintenant appellée dans le ExecStop de config/pyheatpump_fetch.service. Le timer est pour le moment assigné à 1 minute après l’arrêt du service. On a donc plus d’appels concurrentiels à fetch et à supervise.

https://git.yannweb.net/cli/pyHeatpump/src/branch/master/config/pyheatpump_fetch.service

    [Unit]
    Description=pyHeatpump fetch - retrieve the data from the serial port with modbus
    Wants=dev-rs485.device

    [Service]
    Type=simple
    WorkingDirectory=/var/lib/pyheatpump/
    Environment="LOGLEVEL=INFO"
    ExecStart=/usr/bin/env pyheatpump fetch -t D -t A -t I
    ExecStop=/usr/bin/env pyheatpump supervise --since
    KillMode=mixed
    TimeoutStopSec="infinity"
    PrivateTmp=true
Mise à jour du service : Nous n'utilisons plus config/pyheatpump_supervise.service , la commande est maintenant appellée dans le ExecStop de config/pyheatpump_fetch.service. Le timer est pour le moment assigné à 1 minute après l'arrêt du service. On a donc plus d'appels concurrentiels à fetch et à supervise. https://git.yannweb.net/cli/pyHeatpump/src/branch/master/config/pyheatpump_fetch.service ``` [Unit] Description=pyHeatpump fetch - retrieve the data from the serial port with modbus Wants=dev-rs485.device [Service] Type=simple WorkingDirectory=/var/lib/pyheatpump/ Environment="LOGLEVEL=INFO" ExecStart=/usr/bin/env pyheatpump fetch -t D -t A -t I ExecStop=/usr/bin/env pyheatpump supervise --since KillMode=mixed TimeoutStopSec="infinity" PrivateTmp=true ```
Sign in to join this conversation.
No Milestone
No Assignees
1 Participants
Due Date

No due date set.

Dependencies

This issue currently doesn't have any dependencies.

Loading…
Cancel
Save
There is no content yet.