Данный демон предназначен для периодического исполнения некоторого множества комманд в фоновом режиме.
В частности он способен собирать информацию о работе некоторого множества серверов в csv файлы и затем отображать эту информацию в веб приложении.
Используйте git clone https://github.com/DrozdovDan/Daemon чтобы установить демона на ваше устройство, затем перейдите в директорию данного
демона и используйте команду pip install -r requirements.txt для установления зависимостей. Вам также может потребоваться исполнить команду
alias python=python3.
Чтобы изменить настройки по умолчанию, измените следующие строки в файле daemon.py:
pidfile = os.getcwd() + "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/conf/daemon-naprimer.pid"
apppidfile = os.getcwd() + "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/conf/app-daemon.pid"
commands = os.getcwd() + "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/conf/commands.txt"
stdin = "/dev/null"
stdout = "/dev/null"
stderr = os.getcwd() + "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/conf/stderr.err"
pingappcsv = os.getcwd() + "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/conf/ping.csv"
pinghistsappcsv = os.getcwd() + "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/conf/pinghist.csv"
sleeptime = 10Чтобы запустить демона используйте python daemon.py start.
Чтобы остановить демона используйте python daemon.py stop.
Чтобы перезапустить демона используйте python daemon.py restart.
Чтобы запустить веб приложение используйте python daemon.py appstart <your server>.
Чтобы остановить веб приложение используйте python daemon.py appstop.
Чтобы перезапустить веб приложение используйте python daemon.py apprestart <your server>.
Если вы хотите, чтобы некоторая комманда исполнялась, запишите её в файл ./conf/commands в формате <cmd> <parameter1> <parameter2> ..., в
противном случае её в данном файле быть не должно.
Если вы хотите создать новую команду, запишите её код в класс Daemon файла daemon.py в формате:
def cmd(self, parameters):
#put your code hereЗатем добавьте её в класс DaemonCommandsCon того же файла в формате:
def cmd(self, parameters):
self.__ourdaemon.pingall(parameters)Данная команда используется для получения статуса о работе серверов, указанных по умолчанию в файле ./conf/servers.txt и складирует эту
информацию в файле ./response/ping.csv.
Также эта комманда обновляет данную информацию в файле ./conf/ping.csv, используемом веб приложением, при чём она так же рассчитывает, какое
количество времени подряд каждый сервер даёт положительный ответ.
Так же она складирует данную информацию в файле ./conf/pinghist.csv, используемом веб приложением, при чём она удаляет все данные, которые
старше 60 секунд, где 60 секунд является значением по умолчанию и может быть изменено.
В файле ./conf/commands.txt данная команда должна быть записана в формате pingall <servers file> <response file> <time to delete old data>
Данное приложение используется для отображения последних результатов комманды pingall, исполняемой демоном, и отрисовки графика данных, которые
не старше соответствующего времени.
Сервер по умолчанию: localhost:5000