A verificar o estado

Esta página descreve como usar a Service Infrastructure para verificar o estado dos serviços geridos, dos produtores de serviços, dos consumidores de serviços e das chaves da API.

Quando um produtor de serviços oferece um serviço aos seus consumidores de serviços, tem de garantir que são cumpridas várias pré-condições, como se:

  • Um consumidor de serviços foi eliminado.
  • O consumidor do serviço ativou o serviço.
  • Uma chave da API é válida.

A API Service Control oferece um método simples para verificar essas pré-condições.services.check Um serviço gerido deve chamar este método regularmente para garantir que os pré-requisitos são cumpridos. A atividade entre o produtor de serviços e o consumidor de serviços é representada por um Operation. O método services.check executa as seguintes verificações na operação:

  • O projeto do produtor de serviços está ativo e em bom estado.
  • O projeto consumidor de serviços está ativo e em bom estado.
  • O serviço gerido está ativado no projeto do consumidor de serviços.
  • A chave da API é válida.
  • A utilização da chave da API cumpre as restrições associadas à chave da API, como restrições de referenciadores HTTP ou de IP.

Normalmente, o método services.check é invocado a partir dos servidores que implementam efetivamente o serviço. Por motivos de segurança e privacidade, a API Service Control usa a gestão de identidade e acesso para verificar se o autor da chamada tem a autorização adequada para chamar o método. Para ver detalhes, consulte o artigo Controlo de acesso da API Service Control.

A verificar o estado

Depois de implementar um serviço gerido, pode chamar o método services.check no serviço sem configuração adicional. Consulte a referência services.check para ver detalhes.

Para experimentar rapidamente o método, pode usar o comando gcurl para chamar o método services.check. Consulte o artigo Introdução à API Service Control para ver os passos de configuração iniciais.

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"
}

A resposta do método de verificação indica se todas as verificações foram bem-sucedidas ou se algumas falharam. O sucesso é indicado pela ausência do campo checkErrors. Caso contrário, o campo checkErrors apresenta as verificações com falhas.