報告複本健康情況
傳送 Service Fabric 複本的健康情況報告。
回報所指定 Service Fabric 複本的健康情況狀態。 此報告必須包含健康情況報告來源及報告所針對屬性的相關資訊。 此報告會傳送給 Service Fabric 閘道複本,再由其轉送給健康狀態資料存放區。 閘道可能會接受此報告,但健康狀態資料存放區可能在進行額外驗證後會予以拒絕。 例如,健康狀態資料存放區可能會因為參數無效 (例如序號過時) 而拒絕此報告。 若要查看是否在健康狀態存放區中套用報表,請執行 GetReplicaHealth 並檢查報表是否出現在 HealthEvents 區段中。
要求
方法 | 要求 URI |
---|---|
POST | /Partitions/{partitionId}/$/GetReplicas/{replicaId}/$/ReportHealth?api-version=6.0&ServiceKind={ServiceKind}&Immediate={Immediate}&timeout={timeout} |
參數
名稱 | 類型 | 必要 | Location |
---|---|---|---|
partitionId |
字串 (uuid) | 是 | 路徑 |
replicaId |
字串 | 是 | 路徑 |
api-version |
字串 | 是 | 查詢 |
ServiceKind |
字串 (列舉) | 是 | 查詢 |
Immediate |
boolean | No | 查詢 |
timeout |
整數 (int64) | No | 查詢 |
HealthInformation |
HealthInformation | 是 | body |
partitionId
類型:字串 (uuid)
必要:是
分割區的識別。
replicaId
類型:字串
必要:是
複本的識別碼。
api-version
類型:字串
必要:是
預設:6.0
API 的版本。 這是必要參數,其值必須是 '6.0'。
Service Fabric REST API 版本是以 API 引進或變更的執行時間版本為基礎。 Service Fabric 執行時間支援多個版本的 API。 這是 API 的最新支援版本。 如果傳遞較低的 API 版本,傳回的回應可能會與本規格中所述的回應不同。
此外,執行時間也接受高於最新支援版本的任何版本,最高為目前版本的執行時間。 因此,如果最新的 API 版本是 6.0,但如果執行時間是 6.1,為了更容易撰寫用戶端,執行時間將會接受該 API 6.1 版。 不過,API 的行為會根據記載的 6.0 版本。
ServiceKind
類型:字串 (列舉)
必要:是
預設:Stateful
服務複本的類型 (正在報告健康情況的無狀態或具狀態) 。 以下是可能的值。 可能的值包括:'Stateless'、'Stateful'
Immediate
類型:布林值
必要:否
預設:false
指出是否應該立即傳送報告的旗標。
健康情況報告會傳送給 Service Fabric 閘道應用程式,再由其轉送給健康狀態資料存放區。
如果將 Immediate 設定為 true,則不論「HTTP 閘道應用程式」使用什麼網狀架構用戶端設定,都會從「HTTP 閘道」立即將報告傳送給健康狀態資料存放區。
這對於應該儘快傳送的重要報告來說,相當有用。
視時機和其他條件而定,傳送報告時仍可能失敗,例如在「HTTP 閘道」關閉或訊息未觸達閘道的情況下。
如果將 Immediate 設定為 false,就會根據來自「HTTP 閘道」的健康情況用戶端設定來傳送報告。 因此,會根據 HealthReportSendInterval 設定進行批次處理。
這是建議的設定,因為這除了可讓健康情況用戶端將健康情況報告處理最佳化之外,也可將傳送給健康狀態資料存放區的健康情況報告訊息最佳化。
預設不會立即傳送報告。
timeout
類型:整數 (int64)
必要:否
預設:60
InclusiveMaximum: 4294967295
InclusiveMinimum: 1
用來執行作業的伺服器逾時 (以秒為單位)。 此逾時指定了用戶端願意等候要求作業完成的持續時間。 這個參數的預設值是 60 秒。
HealthInformation
類型: HealthInformation
必要:是
描述健康情況報告的健康情況資訊。 此資訊必須存在於傳送至健康情況管理員的所有健康情況報告中。
回應
HTTP 狀態碼 | 描述 | 回應結構描述 |
---|---|---|
200 (確定) | 成功的作業會傳回 200 狀態碼。 |
|
所有其他狀態碼 | 詳細的錯誤回應。 |
FabricError |