使用原則取得叢集健康情況
使用指定的原則取得 Service Fabric 叢集的健康情況。
使用 EventsHealthStateFilter 可根據健康情況狀態,篩選針對叢集所報告的健康情況事件集合。 同樣地,使用 NodesHealthStateFilter 和 ApplicationsHealthStateFilter 可根據彙總的健康情況狀態,篩選傳回的節點和應用程式集合。 使用 ClusterHealthPolicies 覆寫用來評估健康情況的健康情況原則。
要求
方法 | 要求 URI |
---|---|
POST | /$/GetClusterHealth?api-version=6.0&NodesHealthStateFilter={NodesHealthStateFilter}&ApplicationsHealthStateFilter={ApplicationsHealthStateFilter}&EventsHealthStateFilter={EventsHealthStateFilter}&ExcludeHealthStatistics={ExcludeHealthStatistics}&IncludeSystemApplicationHealthStatistics={IncludeSystemApplicationHealthStatistics}&timeout={timeout} |
參數
名稱 | 類型 | 必要 | Location |
---|---|---|---|
api-version |
字串 | 是 | 查詢 |
NodesHealthStateFilter |
整數 | No | 查詢 |
ApplicationsHealthStateFilter |
整數 | No | 查詢 |
EventsHealthStateFilter |
整數 | No | 查詢 |
ExcludeHealthStatistics |
boolean | No | 查詢 |
IncludeSystemApplicationHealthStatistics |
boolean | No | 查詢 |
timeout |
整數 (int64) | No | 查詢 |
ClusterHealthPolicies |
ClusterHealthPolicies | No | 主體 |
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 版本。
NodesHealthStateFilter
類型:整數
必要:否
預設:0
允許根據健康情況狀態,篩選叢集健康情況查詢結果中所傳回的節點健康情況狀態物件。 此參數的可能值包括下列其中一個健康情況狀態的整數值。 只會傳回符合篩選條件的節點。 所有節點都會用來評估彙總的健康情況狀態。
如果未指定,則會傳回所有項目。
狀態值是以旗標為基礎的列舉,因此值可以是使用位元 'OR' 運算子取得的這些值的組合。
例如,如果提供的值為 6,則會傳回 HealthState 值為 OK (2) 和 Warning (4) 的節點健康情況狀態。
- 預設值 - 預設值。 符合任何 HealthState。 值為零。
- 無 - 不符合任何 HealthState 值的篩選。 用來在指定狀態集合沒有任何結果時傳回。 值為 1。
- 確定 - 符合輸入與 HealthState 值 Ok 的篩選。 值為 2。
- 警告 - 符合輸入與 HealthState 值 Warning 的篩選。 值為 4。
- 錯誤 - 符合輸入與 HealthState 值 Error 的篩選。 值為 8。
- All - 符合任何 HealthState 值的輸入的篩選準則。 值為 65535。
ApplicationsHealthStateFilter
類型:整數
必要:否
預設:0
允許根據健康情況狀態,篩選叢集健康情況查詢結果中所傳回的應用程式健康情況狀態物件。
此參數的可能值包括從 HealthStateFilter 列舉成員或對這些成員的位元運算取得的整數值。 只會傳回符合篩選條件的應用程式。
所有應用程式都會用來評估彙總的健康情況狀態。 如果未指定,則會傳回所有項目。
狀態值是以旗標為基礎的列舉,因此值可以是使用位元 'OR' 運算子取得的這些值的組合。
例如,如果提供的值為 6,則會傳回 HealthState 值為 OK (2) 和 Warning (4) 的應用程式健康情況狀態。
- 預設值 - 預設值。 符合任何 HealthState。 值為零。
- 無 - 不符合任何 HealthState 值的篩選。 用來在指定狀態集合沒有任何結果時傳回。 值為 1。
- 確定 - 符合輸入與 HealthState 值 Ok 的篩選。 值為 2。
- 警告 - 符合輸入與 HealthState 值 Warning 的篩選。 值為 4。
- 錯誤 - 符合輸入與 HealthState 值 Error 的篩選。 值為 8。
- All - 符合任何 HealthState 值的輸入的篩選準則。 值為 65535。
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。
ExcludeHealthStatistics
類型:布林值
必要:否
預設:false
指出是否應該在查詢結果中一併傳回健康情況統計資料。 預設為 False。
統計資料會顯示健康情況狀態為 Ok、Warning 及 Error 的子實體數目。
IncludeSystemApplicationHealthStatistics
類型:布林值
必要:否
預設:false
指出健康情況統計資料是否應該包含 fabric:/System 應用程式健康情況統計資料。 預設為 False。
如果 IncludeSystemApplicationHealthStatistics 設為 true,則健康情況統計資料包含的項目屬於 fabric:/System 應用程式。
否則,查詢結果只會包含使用者應用程式的健康情況統計資料。
健康情況統計資料必須包含在查詢結果中,才能套用此參數。
timeout
類型:整數 (int64)
必要:否
預設:60
InclusiveMaximum: 4294967295
InclusiveMinimum: 1
用來執行作業的伺服器逾時 (以秒為單位)。 此逾時指定了用戶端願意等候要求作業完成的持續時間。 這個參數的預設值是 60 秒。
ClusterHealthPolicies
類型: ClusterHealthPolicies
必要:否
描述用來評估叢集健康情況的健康情況原則。
如果沒有,健康情況評估會使用叢集資訊清單或預設叢集健康狀態原則中定義的叢集健康情況原則。
根據預設,如果資訊清單中未定義任何原則,則會使用應用程式資訊清單中定義的特定應用程式健康情況原則或預設健康狀態原則來評估每個應用程式。
如果指定了應用程式健康狀態原則對應,且應用程式有專案,則會使用指定的應用程式健康情況原則來評估應用程式健康情況。
回應
HTTP 狀態碼 | 描述 | 回應結構描述 |
---|---|---|
200 (確定) | 成功的作業會傳回 200 狀態碼和要求的叢集健康情況資訊。 |
ClusterHealth |
所有其他狀態碼 | 詳細的錯誤回應。 |
FabricError |