SC110 表示 shutdown-check 发送测试请求之前,探测路由就已经报告有工作在进行。初始状态不对,探测路由就无法证明这项工作是由本次测试触发的。
| 诊断码 | SC110 FAIL |
|---|---|
| 阶段 | 启动与进行中的工作 |
| CLI 退出码 | 1 |
| 含义 | 发送任何工作之前,工作启动探测路由没有返回非活跃状态码,因此无法用它证明工作何时开始。 |
| 输出信息 |
|
| 首先检查 | 让探测路由在没有工作运行时返回 inactiveStatus,在工作进行中返回不同的 activeStatus。 |
为什么会出现?
- 探测路由总是返回
activeStatus。 - 之前某个请求触发的工作还在运行。
activeStatus和inactiveStatus写反了。- 探测路由超时或无法访问。
- 探测路由跟踪的是并行测试共用的全局状态。
如何修复?
测试请求开始前,探测路由必须返回 inactiveStatus;只有在这次测试请求运行期间,才返回 activeStatus。
{
"started": {
"type": "probe",
"path": "/test/work-active",
"inactiveStatus": 204,
"activeStatus": 200
}
}运行 shutdown-check 之前,先访问一下探测路由。如果它没有返回 204,修正路由,或者等旧的工作结束。如果这个路由暴露了应用的内部状态,只在测试环境中启用它。
如何验证探测路由?
在两种状态下分别检查:
- 工作开始前,返回
inactiveStatus。 - 故意暂停测试请求时,返回
activeStatus。 - 工作结束后,再次返回
inactiveStatus。
下一次运行 shutdown-check 时,应该记录到 work confirmed active,而不是在 service ready 之后立即结束。