pm2
pm2 copied to clipboard
How to disable run app when using --cron
I need to run my app at 6:00, and only at this time. However, when I run the simple command:
pm2 start app.js --cron "0 6 * * *"
pm2 launches the application immediately. Can I prevent this from happening? The feature of writing logs to 2 different files with a timestamp using the --out and --err options is very useful to me, which can't be done with a Linux cron :(
same problem
there is no option for this as far as I know. But I have added the following condition to app.js itself when I had similar requirement:
if (!process.env.prev_restart_delay && process.env.cron_restart) {
console.log('skipping initial launch....');
process.exit(0);
return;
}
this will stop the process immediately but it still will be restarted by cron. Note you should also disable autorestart (--no-autorestart)
Not ideal, but works in my case.
I'm going through the issues to find mentions about not auto-starting a new process, which I now created a PR for: #5780