ステータスのチェック

このページでは、Service Infrastructure を使用して、マネージド サービスサービス プロデューサーサービス ユーザー、API キーの各ステータスを確認する方法について説明します。

サービス プロデューサーは、サービス ユーザーにサービスを提供するとき、以下のような前提条件が満たされているかチェックする必要があります。

  • サービス ユーザーが削除されていること。
  • サービス ユーザーがサービスを有効にしていること。
  • API キーが有効であること。

このような前提条件をチェックするため、Service Control API にはシンプルな services.check メソッドが用意されています。マネージド サービスは定期的にこのメソッドを呼び出し、前提条件が確実に満たされていることを確認する必要があります。サービス プロデューサーとサービス ユーザーの間のアクティビティは Operation によって表されます。services.checkメソッドは、そのオペレーションに対して次のチェックを実行します。

  • サービス プロデューサー プロジェクトが公開中で正常な状態にあること。
  • サービス ユーザー プロジェクトが公開中で正常な状態にあること。
  • マネージド サービスがサービス ユーザー プロジェクトで有効になっていること。
  • API キーが有効であること。
  • IP や HTTP 参照 URL の制限など、API キーに関連付けられている制限に従って API キーを使用していること。

services.check メソッドは通常、サービスが実際に導入されているサーバーから呼び出します。セキュリティとプライバシーの確保のため、Service Control API は Identity and Access Management を使用して、呼び出し元がメソッドを呼び出すのに必要な権限を持っていることを確認します。詳細については、Service Control API のアクセス制御をご覧ください。

ステータスのチェック

マネージドサービスをロールアウトした後、そのサービスに対して追加構成なしで services.check メソッドを呼び出すことができます。詳しくは、services.check のリファレンスをご覧ください。

このメソッドをすばやく試すには、gcurl コマンドを使用して services.check メソッドを呼び出します。初期設定手順については、Service Control API スタートガイドをご覧ください。

gcurl -d '{
  "operation": {
    "operationId": "123e4567-e89b-12d3-a456-426655440000",
    "consumerId": "project:endpointsapis-consumer",
    "startTime":"2016-07-31T05:20:00Z",
    "operationName":"google.example.hello.v1.HelloService.GetHello"
  }
}' https://servicecontrol.googleapis.com/v1/services/endpointsapis.appspot.com:check
{
  "operationId": "123e4567-e89b-12d3-a456-426655440000"
}

このチェック メソッドのレスポンスから、すべてのチェックが正常に完了したのか、一部のチェックが失敗したのかがわかります。成功した場合、checkErrors フィールドは存在しません。成功しなかった場合は、失敗したチェックが checkErrors フィールドに一覧表示されます。