Est-il supervisord
possible de redémarrer automatiquement un travail en échec / abandonné / terminé et de m'envoyer un courrier électronique de notification avec un vidage des x dernières lignes du fichier journal?
la source
Est-il supervisord
possible de redémarrer automatiquement un travail en échec / abandonné / terminé et de m'envoyer un courrier électronique de notification avec un vidage des x dernières lignes du fichier journal?
Il existe un plugin appelé superlance.
Vous l'installez pip install superlance
ou le téléchargez à l' adresse suivante : http://pypi.python.org/pypi/superlance
La prochaine chose que vous faites est que vous allez dans votre supervisord.conf
et ajoutez les lignes suivantes:
[eventlistener:crashmail]
command=/usr/local/bin/crashmail -a -m [email protected]
events=PROCESS_STATE
Ceci devrait être suivi d'une "mise à jour de supervisorctl". Quand un processus "se termine", vous recevrez maintenant une notification à [email protected].
Si vous souhaitez uniquement écouter certaines applications sélectionnées, vous pouvez les échanger -a
contre un -p program1
ou s'il s'agit d'un groupe. group1:program2
Un exemple serait
[eventlistener:crashmail]
command=/usr/local/bin/crashmail -p program1 -p group1:program2 -m [email protected]
events=PROCESS_STATE
En ce qui concerne le redémarrage automatique: vous devez vous assurer que cette option autorestart
est définie sur true
(elle est définie unexpected
par défaut). De cette façon, le paquet sera redémarré 3 fois. Si, après cela, il existe toujours, il abandonne, mais vous pouvez changer cela avec startretries
.
Exemple de programme:
[program:cat]
command=/bin/cat
autorestart=true
startretries=10
J'ai essayé d'installer superlance et de lancer crashmail comme ceci:
après je fais:
et après j'ai ajouté:
et je ne reçois rien ....
Mon fichier crashmail est:
la source