健康报告被困

时间:2016-06-03 21:12:26

标签: azure-service-fabric

在简单的无状态服务中,我试图报告健康状况。作为测试,我只是在RunAsync的循环的每次迭代中在OK和Warning状态之间翻转(它的休眠间隔为15secs)。代码如下所示:

// report warning on odd iterations
HealthState state = ((++iterations % 2) != 0) ? HealthState.Warning : HealthState.Ok;
HealthInformation health = new HealthInformation("ServiceCode", "Iteration", state);
Partition.ReportInstanceHealth(health);

我在循环的每次迭代中记录状态,日志显示它来回翻转。但是在SF资源管理器中,它一直处于Ok状态,从不切换到警告(我在SFExplorer中刷新间隔为5秒)。

我在这里做错了什么?

2 个答案:

答案 0 :(得分:1)

尝试使用每个状态更改的增量值指定HealthInformation.SequenceNumber。

答案 1 :(得分:0)

看起来健康报告明显慢于我的预期。以15秒的间隔工作是不足以显示交替的健康状态。移动到30秒的时间间隔似乎已经解决了。