Hi David,
I just put the turkey on the weber so my answer is brief. Happy T-day.
I would generally agree with you that cron is NOT the right way to
go. The challenge here is that SystemD is super complicated and new
Linux are usually already overwhelmed.
I've spent some time learning how to use the systemd transaction
files. Not sure that systemd is complicated to config but there
definitely is a learning curve that can be steep depending on your
background.
As such, cron is probably a
easy place to start to create some level of resiliency. Unfortunately
today, there are few solutions in between say cron and Systemd other
than monitoring tools like Monit, etc.
If it's what you know that's what you will use ... even if it's the
wrong thing to use. Sounds like we need to discuss this over a beer.
Anyway, thanks for posting your SystemD configs. As you put them
together, do you know if one SystemD restart can also signal other
running processes to HUP, restart, whatever?
systemd has extensive restart capability. It can restart on-success,
on-failure, on-abnormal, on-watchdog, on-abort or always. In the
transaction files you specify ExecStartPre, ExecStartPost etc and you
can conditional a process restart based on the exit codes of these
processes as well.
Having said that I haven't used those features .. yet. My setup is very
stable and the problems I've seen using direwolf & Xastir have to do
with the window manager locking up. I'm using an Rpi & a 7" display
for home & car.
/Basil