Hi HN,<p><pre><code> We are two founders starting up a business. We need to run multiple programs everyday (around 25) that will be run periodically. They are not always alive though and will often be done in 10 minutes to an hour.
</code></pre>
Unfortunately as a two person company, keeping track of all the programs' statuses is hard.<p>Is there a way to keep track (and if possible, also spawn them on schedule) of the processes and give regular updates? Like a dashboard of sorts, that can show which programs have been running successfully and which have failed to finish or didn't start?
For a *nix box, the simple/historic way has been to run the tasks from cron and append log output from them to text files or the system logs. If you really mean statuses, as in exit statuses, wrap the programs in shell scripts which print out the programs' exit codes.<p>It's unfashionable these days I think, but still works for me.
You might have to come up with something custom.<p>Here's one idea:<p>1. Wrap your processes in systemd services or something similar, where it's possible to determine the status by pinging it.<p>2. Write a script to periodically (via cron maybe) ping all relevant services, and store the statuses somewhere (file, DB..)<p>3. Another script (or the previous one) to read the data from 2 and spit it to a locally served webpage.<p>> if possible, also spawn them on schedule<p>Cronjobs.
Cron is the term you are looking for and there are many options. As another commenter said, there are Linux system level solutions. There are also Cron concepts in kubernetes, aws lambda, zapier. If they don't have a dashboard, I'm sure there is another SaaS that does and plenty of open source solutions for that as well