I remember having same problem with Linux, tried to compensate with Monit but it never just worked quite right.
Systemd might add a bunch of unnecessary complexity in places, but for a sysadmin it's a fucking blessing. Just write one simple file, set binary, user, done, add some limitations and dependencies if you want to be fancy, set auto restart to true and It Just Works.
Can even set some memory limits if you want to be fancy so any memory leak won't get you into too much trouble but just gets the service restarted
Systemd might add a bunch of unnecessary complexity in places, but for a sysadmin it's a fucking blessing. Just write one simple file, set binary, user, done, add some limitations and dependencies if you want to be fancy, set auto restart to true and It Just Works.
Can even set some memory limits if you want to be fancy so any memory leak won't get you into too much trouble but just gets the service restarted