Greetings Phill,
"Well the api isn't very well designed because there's nothing that comes remotely close to explaining how to do it. " Seems a bit abrupt for something we are providing for free.
I haven't user the API myself in quite some time but I took a look at the code and found the following api for service recovery.
x.EnableServiceRecovery(r =>
{
//you can have up to three of these
r.RestartComputer(5, "message");
r.RestartService(0);
//the last one will act for all subsequent failures
r.RunProgram(7, "some command");
r.OnCrashOnly();
r.SetResetPeriod(1);
});
and then i took a look at the windows recovery tab:
Now granted I am very comfortable to the Topshelf API, but I don't think that "isn't very well designed because there's nothing that comes remotely close to explaining how to do it." when the code seems to line up right with the Service Configuration options.
To your point, I have added some more to the sample, and I'll be adding documentation shortly.
-d