Получите уведомление от supervisord, когда задание выйдет

Я использовал Резервное копирование Cobian на довольно хороший успех на моих 3 машинах Windows. Это имеет тонну встроенных функций, включая шифрование, сжатие, и удаленные резервные копии / резервные копии FTP. Планировщик довольно детализирован также и может запустить задания, которые были пропущены, если компьютер или сеть снизились.

36
задан 5 April 2015 в 05:21
2 ответа

Существует плагин, названный суперкопьем.

Вы устанавливаете его с pip install superlance или загрузите его в: http://pypi.python.org/pypi/superlance

Следующая вещь, которую Вы делаете, является Вами, входят в Ваш supervisord.conf и добавьте следующие строки:

[eventlistener:crashmail]
command=/usr/local/bin/crashmail -a -m email1@example.com
events=PROCESS_STATE

Это должно сопровождаться "supervisorctl обновление". Когда процесс "выйдет", Вы теперь отправите уведомление в email1@example.com.

Если Вы только хотите слушать некоторые выбранные приложения, можно обмениваться -a для a -p program1 или если это - группа group1:program2 Один пример был бы

[eventlistener:crashmail]
command=/usr/local/bin/crashmail -p program1 -p group1:program2  -m email1@example.com
events=PROCESS_STATE

Относительно автоматического перезапуска: необходимо удостовериться это autorestart установлен на true (это установлено на unexpected по умолчанию). Таким образом, пакет будет перезапущен 3 раза. Если после этого это все еще выходит, это сдается, но можно изменить это с startretries.

Пример программы:

[program:cat]
command=/bin/cat
autorestart=true
startretries=10
49
ответ дан 28 November 2019 в 19:50

Я пытался установить суперкопье и выполнить crashmail как это:

sudo apt-get install python-pip
sudo pip install superlance

после того, как я делаю:

sudo nano /etc/supervisor/supervisord.conf

и после того, как я добавил:

[eventlistener:crashmail]
command=/usr/local/bin/crashmail -a -m mymail@mail.fr
events=PROCESS_STATE

и я ничего не получаю....

Мой crashmail файл:

#!/usr/bin/python

-- coding: utf-8 --
import re
import sys

from superlance.crashmail import main

if name == 'main':
sys.argv[0] = re.sub(r'(-script.pyw?|.exe)?, '', sys.argv[0])
sys.exit(main())
0
ответ дан 28 November 2019 в 19:50

Теги

Похожие вопросы