次の方法で共有


ポリシーを使用してサービス正常性を取得する

指定した正常性ポリシーを使用して、指定した Service Fabric サービスの正常性を取得します。

指定したサービスの正常性情報を取得します。 アプリケーション正常性ポリシーが指定されている場合、正常性評価では、それを使用して集計された正常性状態が取得されます。 ポリシーが指定されていない場合、正常性評価では、アプリケーション マニフェストで定義されているアプリケーション正常性ポリシー、またはマニフェストでポリシーが定義されていない場合は既定の正常性ポリシーが使用されます。 正常性状態に基づいてサービスで報告される正常性イベントのコレクションをフィルター処理するには、EventsHealthStateFilter を使用します。 返されるパーティションのコレクションをフィルター処理するには、PartitionsHealthStateFilter を使用します。 正常性ストアに存在しないサービスを指定した場合、この要求からエラーが返されます。

Request

Method 要求 URI
POST /Services/{serviceId}/$/GetHealth?api-version=6.0&EventsHealthStateFilter={EventsHealthStateFilter}&PartitionsHealthStateFilter={PartitionsHealthStateFilter}&ExcludeHealthStatistics={ExcludeHealthStatistics}&timeout={timeout}

パラメーター

名前 Type 必須 場所
serviceId string はい パス
api-version string はい クエリ
EventsHealthStateFilter 整数 (integer) いいえ クエリ
PartitionsHealthStateFilter 整数 (integer) いいえ クエリ
ExcludeHealthStatistics boolean いいえ クエリ
timeout integer (int64) いいえ クエリ
ApplicationHealthPolicy ApplicationHealthPolicy いいえ 本文

serviceId

: string
必須: はい

サービスの ID。 この ID は通常、"fabric:" URI スキームのないサービスの完全な名前です。 バージョン 6.0 以降では、階層名は "~" 文字で区切られます。 たとえば、サービス名が "fabric:/myapp/app1/svc1" の場合、6.0 以上ならばサービス ID は "myapp~app1~svc1" になり、以前のバージョンでは "myapp/app1/svc1" になります。


api-version

: string
必須: はい
既定値:

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

: 整数
必須: いいえ
既定値:

正常性の状態に基づいて返された HealthEvent オブジェクトのコレクションをフィルター処理できます。 このパラメーターに指定できる値には、次の正常性の状態のいずれかの整数値が含まれます。 フィルターに一致するイベントのみが返されます。 すべてのイベントが集計された正常性の状態を評価するために使用されます。 指定しない場合、すべてのエントリが返されます。 状態値はフラグベースの列挙型であるため、値はビット演算子 'OR' を使用して取得したこれらの値の組み合わせが可能です。 たとえば、指定した値が 6 の場合、HealthState の値が OK (2) と Warning (4) のすべてのイベントが返されます。

  • 既定値 - 既定値。 任意の HealthState と一致します。 値は 0 です。
  • None - HealthState 値と一致しないフィルター。 状態の特定のコレクションの結果が返されないようにするために使用されます。 値は 1 です。
  • Ok - HealthState 値 Ok の入力と一致するフィルター。 値は 2 です。
  • 警告 - HealthState 値 Warning の入力と一致するフィルター。 値は 4 です。
  • エラー - HealthState 値 Error の入力と一致するフィルター。 値は 8 です。
  • All - 任意の HealthState 値を持つ入力と一致するフィルター。 値は 65535 です。

PartitionsHealthStateFilter

: 整数
必須: いいえ
既定値:

正常性の状態に基づくサービス正常性クエリの結果で返される、パーティションの正常性状態オブジェクトのフィルター処理を可能にします。 このパラメーターに指定できる値には、次の正常性の状態のいずれかの整数値が含まれます。 フィルターに一致するパーティションのみが返されます。 集計された正常性の状態を評価するには、すべてのパーティションが使用されます。 指定しない場合、すべてのエントリが返されます。 状態の値はフラグベースの列挙であるため、値はビット演算子 'OR' を使用して取得したこれらの値の組み合わせとなる可能性があります。 たとえば、指定した値が 6 の場合は、HealthState 値が OK (2) と Warning (4) のパーティションの正常性の状態が返されます。

  • 既定値 - 既定値。 任意の HealthState と一致します。 値は 0 です。
  • None - HealthState 値と一致しないフィルター。 状態の特定のコレクションの結果が返されないようにするために使用されます。 値は 1 です。
  • Ok - HealthState 値 Ok の入力と一致するフィルター。 値は 2 です。
  • 警告 - HealthState 値 Warning の入力と一致するフィルター。 値は 4 です。
  • エラー - HealthState 値 Error の入力と一致するフィルター。 値は 8 です。
  • All - 任意の HealthState 値を持つ入力と一致するフィルター。 値は 65535 です。

ExcludeHealthStatistics

: ブール値
必須: いいえ
既定値:

正常性の統計情報をクエリ結果の一部として返すかどうかを示します。 既定では false です。 統計情報は、正常性の状態が Ok、Warning、および Error の子エンティティの数を示します。


timeout

: integer (int64)
必須: いいえ
既定値:
InclusiveMaximum: 4294967295
InclusiveMinimum: 1

操作を実行するためのサーバー タイムアウト (秒単位)。 このタイムアウトは、要求した操作が完了するまでクライアントが待機できる期間を指定します。 このパラメーターの既定値は 60 秒です。


ApplicationHealthPolicy

種類: ApplicationHealthPolicy
必須: いいえ

アプリケーションまたはその子の正常性を評価するために使用される正常性ポリシーについて説明します。 存在しない場合、正常性評価では、アプリケーション マニフェストまたは既定の正常性ポリシーの正常性ポリシーが使用されます。

応答

HTTP 状態コード 説明 応答スキーマ
200 (OK) 操作が成功すると、200 の状態コードと、指定されたサービスの正常性情報が返されます。
ServiceHealth
その他すべての状態コード 詳細なエラー応答。
FabricError