O Connectivity Tests oferece suporte à verificação periódica do status de uma operação de teste em execução, como create
, update
ou delete
. Você ainda pode revisar os resultados finais do teste quando o teste for concluído.
Console
O console do Google Cloud usa um ícone giratório para mostrar um teste em execução. Nos bastidores, o Connectivity Tests pesquisa continuamente o status da operação de teste. Quando o teste for concluído, você poderá verificar os resultados finais no painel Detalhes do resultado.
Para mais informações sobre as páginas do console do Google Cloud, consulte Criar e executar testes de conectividade.
gcloud
Para usar a CLI gcloud para verificar uma operação de teste em execução,
especifique a opção --async
. Se você não especificar esta opção, verá
apenas os resultados finais do teste.
Por exemplo, criar o teste a seguir usando a opção
--async
retorna imediatamente um ID de recurso de operação para a linha de comando. Você pode usar esse código em um comandodescribe
subsequente para verificar o status do teste enquanto o teste ainda está em execução.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
Substitua os seguintes valores:
NAME
: o nome dos testes de conectividadeDESTINATION_PROJECT
: o ID do projeto do endpoint de destinoSOURCE_IP_ADDRESS
: o endereço IP de origem interno ou externo que você está testando. Um endereço IPv6 só é permitido quando o destino do teste é um VIP do balanceador de carga globalDESTINATION_IP_ADDRESS
: o endereço IP de origem interno ou externo que você está testando. Um endereço IPv6 só é permitido quando o destino do teste é um VIP do balanceador de carga globalPROTOCOL
: um protocolo compatível para testes de conectividadeSOURCE_PROJECT
: o ID do projeto do endpoint de origem
A saída é esta:
Create request issued for: [gcloud-example] Check operation [projects/reachability-e2e-test/locations/global/operations/operation-1580411210002-59d6028c56f71-85ef2899-54d8bc13] for status
Use o ID do recurso de operação com o comando
describe
para verificar o status do teste:gcloud network-management operations describe \ projects/SOURCE_PROJECT/locations/global/operations/OPERATION_RESOURCE_ID
Substitua os seguintes valores:
SOURCE_PROJECT
: o ID do projeto do endpoint de origemOPERATION_RESOURCE_ID
: o ID do recurso da operação em andamento que você está verificando (por exemplo,operation-1580411210002-59d6028c56f71-85ef2899-54d8bc13
)
A seguinte amostra de saída para o comando anterior mostra
done: false
. Quando o teste é concluído, este campo muda paradone: 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.
Repita o comando
describe
anterior até que a saída mostredone: true
.
API
A API de gerenciamento de rede está sempre no modo async
. Ao emitir um comando para a API, você recebe imediatamente um código da operação. Você pode usar esse código para verificar periodicamente o status do teste.
Python
A API de gerenciamento de rede está sempre no modo async
. Ao usar o
cliente Python da API para emitir uma solicitação, você recebe imediatamente um ID de operação.
Você pode usar esse ID para verificar periodicamente o status do teste.
Veja o exemplo a seguir:
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))
Substitua os seguintes valores:
PROJECT_ID
: o ID do projeto em que você criou o testeOPERATION_ID
: o ID do recurso da operação em andamento que você está verificando (por exemplo,operation-1580411210002-59d6028c56f71-85ef2899-54d8bc13
)