接続テストでは、create、update、delete などの実行中のテスト オペレーションのステータスを定期的に確認できます。テストの完了後も、最終的なテスト結果を確認できます。
コンソール
Google Cloud コンソールでは、実行中のテストがスピナー アイコンを使って表示されます。接続テストはテスト オペレーションのステータスをバックグラウンドで継続的にポーリングします。テストが完了すると、[結果の詳細] パネルで最終結果を確認できます。
Google Cloud コンソール ページの詳細については、接続テストを作成して実行するをご覧ください。
gcloud
gcloud CLI を使用して実行中のテスト オペレーションを確認するには、--async オプションを指定します。このオプションを指定しないと、最終的なテスト結果のみが表示されます。
たとえば、
--asyncオプションを指定して次のテストを作成すると、コマンドラインにすぐにオペレーション リソース ID が返されます。その後、この ID を後続のdescribeコマンドで使用して、テストの実施中にテスト ステータスを確認できます。gcloud network-management connectivity-tests create NAME \ --destination-project=DESTINATION_PROJECT \ --source-ip-address=SOURCE_IP_ADDRESS \ --destination-ip-address=DESTINATION_IP_ADDRESS \ --protocol=PROTOCOL \ --source-project=SOURCE_PROJECT \ --async
次の値を置き換えます。
NAME: 接続テストの名前DESTINATION_PROJECT: 送信先エンドポイントのプロジェクト IDSOURCE_IP_ADDRESS: テストの起点となる内部または外部の送信元 IP アドレス。IPv6 アドレスは、テストの宛先がグローバル ロードバランサの VIP である場合にのみ許可されます。DESTINATION_IP_ADDRESS: テストの終点となる内部または外部の送信元 IP アドレス。IPv6 アドレスは、テストの宛先がグローバル ロードバランサの VIP である場合にのみ許可されます。PROTOCOL: 接続テストでサポートされているプロトコルSOURCE_PROJECT: 送信元エンドポイントのプロジェクト ID
次のような出力が表示されます。
Create request issued for: [gcloud-example] Check operation [projects/reachability-e2e-test/locations/global/operations/operation-1580411210002-59d6028c56f71-85ef2899-54d8bc13] for status
テストのステータスを確認するには、
describeコマンドでオペレーション リソース ID を使用します。gcloud network-management operations describe \ projects/SOURCE_PROJECT/locations/global/operations/OPERATION_RESOURCE_ID
次の値を置き換えます。
SOURCE_PROJECT: 送信元エンドポイントのプロジェクト IDOPERATION_RESOURCE_ID: チェックしている処理中のオペレーションのリソース ID(たとえばoperation-1580411210002-59d6028c56f71-85ef2899-54d8bc13)
次に示す、前述のコマンドのサンプル出力は、
done: falseを示しています。テストが完了すると、このフィールドはdone: trueに変わります。done: false metadata: '@type': type.googleapis.com/google.cloud.networkmanagement.v1.OperationMetadata apiVersion: v1 cancelRequested: false createTime: '2020-01-30T19:06:50.055838110Z' endTime: '2020-01-30T19:06:57.637200039Z' target: projects/reachability-e2e-test/locations/global/connectivityTests/gcloud-example verb: create name: projects/reachability-e2e-test/locations/global/operations/operation-1580411210002-59d6028c56f71-85ef2899-54d8bc13 response: '@type': type.googleapis.com/google.cloud.networkmanagement.v1beta1.ConnectivityTest createTime: '2020-01-30T19:06:50.050012906Z' ... // Full resource metadata displayed here.
出力に
done: trueが表示されるまで、上記のdescribeコマンドを繰り返します。
API
Network Management API は常に async モードです。API にコマンドを発行すると、オペレーション ID がすぐに送信されます。この ID を使用して、定期的にテスト ステータスを確認できます。
Python
Network Management API は常に async モードです。API Python クライアントを使用してリクエストを発行すると、オペレーション ID がすぐに送信されます。この ID を使用して、定期的にテスト ステータスを確認できます。
次の例をご覧ください。
project_id = 'PROJECT_ID'
operation_id = 'OPERATION_ID'
request = api.projects().locations().global_().operations().get(
name='projects/%s/locations/global/operations/%s' % (project_id, operation_id))
print(json.dumps(request.execute(), indent=4))
次の値を置き換えます。
PROJECT_ID: テストを作成したプロジェクトのプロジェクト IDOPERATION_ID: チェックしている処理中のオペレーションのリソース ID(たとえばoperation-1580411210002-59d6028c56f71-85ef2899-54d8bc13)