Cette page explique comment exploiter Service Infrastructure pour vérifier l'état des services gérés, des producteurs de services, des clients des services et des clés API.
Lorsqu'un producteur de services offre un service à ses clients, il doit s'assurer que diverses conditions préalables sont remplies, par exemple :
- Un client du service a été supprimé.
- Le client du service a bien activé le service.
- La clé API est valide.
L'API Service Control fournit une méthode services.check
simple pour vérifier ces conditions préalables. Un service géré doit appeler cette méthode régulièrement pour s'assurer que les conditions préalables sont remplies. L'activité entre le producteur de services et le client du service est représentée par une Operation
.
La méthode services.check
effectue les vérifications suivantes sur l'opération :
- Le projet producteur du service est actif et opérationnel.
- Le projet client du service est actif et opérationnel.
- Le service géré est activé sur le projet client du service.
- La clé API est valide.
- L'utilisation de la clé API satisfait aux restrictions qui lui sont associées, par exemple les restrictions d'adresse IP ou de référant HTTP.
La méthode services.check
est généralement appelée à partir des serveurs qui mettent en œuvre le service. Pour des raisons de sécurité et de confidentialité, l'API Service Control utilise la gestion de l'authentification et des accès pour vérifier que l'appelant de la méthode dispose des autorisations appropriées. Pour en savoir plus, consultez la page Contrôle d'accès à l'API Service Control.
Vérifier l'état
Après avoir déployé un service géré, vous pouvez appeler la méthode services.check
sur le service, sans configuration supplémentaire. Pour en savoir plus, consultez la documentation de référence sur services.check
.
Pour tester rapidement la méthode, vous pouvez utiliser la commande gcurl
pour appeler la méthode services.check
. Consultez la page Premiers pas avec l'API Service Control pour connaître la procédure de configuration initiale.
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" }
La réponse de la méthode de vérification indique si toutes les vérifications ont réussi ou si certaines ont échoué. L'absence du champ checkErrors
indique une réussite. Dans le cas contraire, le champ checkErrors
répertorie les vérifications ayant échoué.