У меня есть сервер PM2, на котором работает файл конфигурации экосистемы с определенными заданиями, использующими функциональность cron_restart. У меня было одно задание, настроенное как 0 6 * * * (каждый день в 6:00), и я изменил его на 0 10 * * * (каждый день в 10:00). Затем я перезапустил экосистему следующим образом:
pm2 startOrReload ecosystem.config.js --update-env
Работник по-прежнему увольнялся в 6:00 каждый день. Итак, я попробовал это:
pm2 restart ecosystem.config.js
Еще 6:00.
Как мне перезапустить PM2, чтобы он обновил/перезагрузил новый cron_restart?





Флаг --update-env уведомляет pm2 об обновлении переменных ENV, поэтому, если вы просто обновите файл экосистемы, этот флаг просто ничего не сделает.
Чтобы изменить значение cron, сначала введите команду pm2 list и укажите номер задачи, которую вы хотите обновить.
Затем введите следующую команду: pm2 restart 0 --cron-restart = "0 10 * * *". В этом примере я предполагаю, что идентификатор вашего процесса равен «0».
Также обновите файл экосистемы и не забудьте ввести команду pm2 save, чтобы сохранить конфигурацию.
рад, что смог помочь тебе
Да, это работает. Я также обнаружил, что если я удалю задание с помощью
pm2 deleteи перезапущу экосистему (pm2 restart ecosystem.config.js) после изменения значения cron_restart в файле экосистемы, это тоже сработает, но будет немного более грубым.