取得服務健康情況
取得所指定 Service Fabric 服務的健康情況。
取得所指定服務的健康情況資訊。 使用 EventsHealthStateFilter 可根據健康情況狀態,篩選針對服務所報告的健康情況事件集合。 使用 PartitionsHealthStateFilter 來篩選所傳回資料分割的集合。 如果您指定的服務不在健康狀態資料存放區中,此要求就會傳回錯誤。
要求
方法 | 要求 URI |
---|---|
GET | /Services/{serviceId}/$/GetHealth?api-version=6.0&EventsHealthStateFilter={EventsHealthStateFilter}&PartitionsHealthStateFilter={PartitionsHealthStateFilter}&ExcludeHealthStatistics={ExcludeHealthStatistics}&timeout={timeout} |
參數
名稱 | 類型 | 必要 | Location |
---|---|---|---|
serviceId |
字串 | 是 | 路徑 |
api-version |
字串 | 是 | 查詢 |
EventsHealthStateFilter |
整數 | No | 查詢 |
PartitionsHealthStateFilter |
整數 | No | 查詢 |
ExcludeHealthStatistics |
boolean | No | 查詢 |
timeout |
整數 (int64) | No | 查詢 |
serviceId
類型:字串
必要:是
服務的身分識別。 此識別碼通常是不含 'fabric:' URI 配置的服務完整名稱。
從 6.0 版開始,階層的名稱會以 "~" 字元分隔。
例如,如果服務名稱是 "fabric:/myapp/app1/svc1",那麼在 6.0 以上的版本中,服務識別為 "myapp~app1~svc1",在舊版中則為 "myapp/app1/svc1"。
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 版本。
EventsHealthStateFilter
類型:整數
必要:否
預設:0
可根據健康情況狀態來篩選所傳回的 HealthEvent 物件集合。
此參數的可能值包括下列其中一個健康情況狀態的整數值。
只會傳回符合篩選條件的事件。 所有事件都會用來評估彙總的健康情況狀態。
如果未指定,則會傳回所有項目。 狀態值是以旗標為基礎的列舉,因而此值可以是使用位元 'OR' 運算子所取得這些值的組合。 例如,如果提供的值為 6,則會傳回 HealthState 值為 OK (2) 和 Warning (4) 的所有事件。
- 預設值 - 預設值。 符合任何 HealthState。 值為零。
- 無 - 不符合任何 HealthState 值的篩選。 用來在指定狀態集合沒有任何結果時傳回。 值為 1。
- 確定 - 符合輸入與 HealthState 值 Ok 的篩選。 值為 2。
- 警告 - 符合輸入與 HealthState 值 Warning 的篩選。 值為 4。
- 錯誤 - 符合輸入與 HealthState 值 Error 的篩選準則。 值為 8。
- All - 符合輸入與任何 HealthState 值的篩選。 值為 65535。
PartitionsHealthStateFilter
類型:整數
必要:否
預設:0
允許根據健康情況狀態,篩選服務健康情況查詢結果中所傳回的分割區健康情況狀態物件。
此參數的可能值包括下列其中一個健康情況狀態的整數值。
只會傳回符合篩選條件的分割區。 所有分割區都會用來評估彙總的健康情況狀態。
如果未指定,則會傳回所有項目。 狀態值是以旗標為基礎的列舉,因此值可以是使用位元 'OR' 運算子取得的這些值的組合。 例如,如果提供的值為 6,將會傳回 HealthState 值為 OK (2) 和 Warning (4) 的分割區健康情況狀態。
- 預設值 - 預設值。 符合任何 HealthState。 值為零。
- 無 - 不符合任何 HealthState 值的篩選。 用來在指定狀態集合沒有任何結果時傳回。 值為 1。
- 確定 - 符合輸入與 HealthState 值 Ok 的篩選。 值為 2。
- 警告 - 符合輸入與 HealthState 值 Warning 的篩選。 值為 4。
- 錯誤 - 符合輸入與 HealthState 值 Error 的篩選準則。 值為 8。
- All - 符合輸入與任何 HealthState 值的篩選。 值為 65535。
ExcludeHealthStatistics
類型:布林值
必要:否
預設:false
指出是否應該在查詢結果中一併傳回健康情況統計資料。 預設為 False。
統計資料會顯示健康情況狀態為 Ok、Warning 及 Error 的子實體數目。
timeout
類型:整數 (int64)
必要:否
預設:60
InclusiveMaximum: 4294967295
InclusiveMinimum: 1
用來執行作業的伺服器逾時 (以秒為單位)。 此逾時指定了用戶端願意等候要求作業完成的持續時間。 這個參數的預設值是 60 秒。
回應
HTTP 狀態碼 | 描述 | 回應結構描述 |
---|---|---|
200 (確定) | 成功的作業會傳回 200 狀態碼和指定服務的健康情況資訊。 |
服務健康狀況 |
所有其他狀態碼 | 詳細的錯誤回應。 |
FabricError |