В основном то, о чем говорится в названии. Я настроил сценарий для просмотра наших приложений и использования pm2 reload
в них. Это сделано для того, чтобы разрешить перезапуск наших приложений с нулевым временем простоя, а также исправить ошибку, которую мы имеем, используя cron_restart
в файлах pm2_config.json отдельных приложений. Рассматриваемую ошибку можно найти здесь.
Сценарий, который у меня есть, решает эту проблему и успешно перезапускает мои приложения без каких-либо ошибок. Мой единственный вопрос: есть ли способ сделать это с помощью самого pm2. То есть существует ли конфигурация, аналогичная cron_restart
, в которой вместо этого используется pm2 reload
. Или есть ли способ настроить файл конфигурации для pm2 для запуска pm2 reload
самостоятельно, без создания нового сценария. Я ничего не видел в документации, так что полагаю, что нет, но хотел бы быть уверенным.
#!/bin/bash
while read appName; do
echo "Running pm2 reload on $appName"
pm2 reload /$appName-/
sleep 10
done <$HOME/test/service_restart/bin/serviceNames.csv
{
"apps" : [
{
"name" : "service_reload",
"script" : "service_reload.sh",
"pid_file" : "~/test/service_restart/bin/service_reload.pid",
"out_file" : "~/test/service_restart/bin/service_reload.log",
"error_file" : "~/test/service_restart/bin/service_reload.log",
"log_date_format" : "YYYY-MM-DD HH:mm:ss",
"cron_restart": "0 2 * * Sun",
"autorestart": false
}
]
}