@Henry_Burke I have separated background processing and use three task agent because @aidacra says so below. This means you can restart the printing appserver or task agents without users knowing. In addition to the event viewer info below. I also have a sql job that looks for Immediate run requests over X minutes and emails support.
From the link above^^^
There is a topic within the TaskAgent Configuration help that discusses how to setup notification when a taskagent stops processing/throws an error–I know that people have used that same trigger to automatically restart the taskagent service* so that it is addressed without manual intervention.
*In 10.1.600, we have a new command line interface for the taskagent where just a taskagent configuration can be restarted instead of the entire service.