【发布时间】:2017-11-20 12:51:56
【问题描述】:
我正在使用 Topshelf 创建 Windows 服务。此服务将尝试恢复前 3 次失败,但之后就不再工作了。
在主机上的服务中检查服务显示:
First Failure: Restart the Service
Second Failure: Restart the Service
Subsequent Failures: Restart the Service
Reset fail count after: 1 days
Restart service after: 2 minutes
服务恢复代码如下所示:
f.EnableServiceRecovery(r =>
{
r.RestartService(2);
r.RestartService(5);
r.RestartService(5);
r.OnCrashOnly();
r.SetResetPeriod(1);
});
在恢复失败后检查事件日志会显示以下消息:
The MyService service terminated unexpectedly. It has done this 1 time(s). The following corrective action will be taken in 120000 milliseconds: Restart the service.
The MyService service terminated unexpectedly. It has done this 2 time(s). The following corrective action will be taken in 300000 milliseconds: Restart the service.
The MyService service terminated unexpectedly. It has done this 3 time(s). The following corrective action will be taken in 300000 milliseconds: Restart the service.
The MyService service terminated unexpectedly. It has done this 4 time(s).
从上面可以看出。第四次不触发恢复。
这是 Windows 错误、Topshelf 问题还是我的配置有问题?
【问题讨论】:
标签: c# windows-services topshelf