Vous trouverez sur cette page la procédure à suivre pour autoriser, via Service Infrastructure, les services gérés à générer des données de surveillance à envoyer aux projets producteurs de services et clients du service. Stackdriver Monitoring offre une visibilité sur les performances, le temps d'activité et la santé globale de chaque service géré.
L'API Service Control acquiert les métriques, les regroupe par lots, les agrège et les transmet à Cloud Monitoring. Ce dernier les ingère, puis produit des statistiques qu'il présente sous forme de tableaux de bord, de graphiques et via des alertes.
Alors que Stackdriver Monitoring à lui seul permet à un service géré de générer des données de surveillance à l'intention du développeur de ce service, l'API Service Control permet, en plus, de générer des données de surveillance destinées aux utilisateurs. Ces derniers sont ainsi en mesure de comprendre et d'analyser l'utilisation de votre service géré.
Remarque : Ce guide est destiné à la surveillance des métriques définies par les services gérés. Les métriques Monitoring personnalisées ne peuvent pas être transmises via l'API Service Control. Pour utiliser des métriques personnalisées, vous devez suivre le guide de Monitoring.
Configurer la surveillance
Avant d'envoyer des données de surveillance à l'API Service Control, vous devez spécifier trois informations distinctes dans votre configuration de service :
Ressources surveillées: une ressource surveillée représente une entité Cloud qui produit des données de surveillance. Pour définir une ressource surveillée dans la configuration du service, consultez la spécification technique de monitored_resource.proto. Nous vous recommandons vivement d'utiliser la même ressource surveillée pour la surveillance et la journalisation.
Métriques : vous pouvez générer des rapports sur une ou plusieurs métriques. Chaque métrique représente un seul état dont la valeur est suivie dans le temps. Consultez la page metric.proto pour connaître les spécifications techniques permettant de définir une métrique.
Configuration de la surveillance : permet de spécifier les métriques associées à une ressource surveillée, ainsi que le projet producteur de service ou client du service auquel chaque métrique doit être envoyée. Pour plus de détails, consultez la page monitoring.proto.
Dans l'exemple de configuration de service suivant, nous avons défini une ressource surveillée et une métrique.
# The definition of the monitored resource to be used.
monitored_resources:
- type: library.appspot.com/Branch
description: A library branch.
display_name: Library Branch
launch_stage: ALPHA
labels:
- key: resource_container
description: The Google Cloud resource container (ie. project id) for
the branch.
- key: location
description: The Google Cloud region the branch is located.
- key: branch_id
description: The ID of the branch.
# The definition of the metrics to be used.
metrics:
- name: library.appspot.com/book/num_overdue
display_name: Books Overdue
description: The current number of overdue books.
launch_stage: ALPHA
metric_kind: GAUGE
value_type: INT64
unit: 1
- name: library.googleapis.com/book/returned_count
display_name: Books Returned
description: The count of books that have been returned.
launch_stage: ALPHA
metric_kind: DELTA
value_type: INT64
unit: 1
# The monitoring configuration.
monitoring:
producer_destinations:
- monitored_resource: library.appspot.com/Branch
metrics:
- library.googleapis.com/book/returned_count
consumer_destinations:
- monitored_resource: library.appspot.com/Branch
metrics:
- library.appspot.com/book/num_overdue
Une fois que vous avez créé cette configuration, vous devez suivre les étapes décrites dans les sections Gérer les configurations de service et Gérer les déploiements de service pour transmettre la configuration de service à l'API Service Management, qui configure alors la ressource surveillée ainsi que les définitions de métriques dans Cloud Monitoring.
Créer des rapports sur les métriques
Une fois que la configuration du service a été correctement transmise, vous pouvez appeler l'API Service Control pour générer des rapports sur les métriques. L'exemple suivant démontre l'appel en question à l'aide de la commande gcurl
. Pour savoir comment le configurer, consultez la page Premiers pas avec l'API Service Control.
gcurl -d "{ 'operations': [ { 'operationId': '8356d3c5-f9b5-4274-b4f9-079a3731e6e5', 'operationName': 'Return books', 'consumerId': 'projects/library-consumer', 'startTime': '`date +%FT%T%:z`', 'endTime': '`date +%FT%T%:z --date="5 seconds"`', 'labels': { 'location': 'us-east1', 'branch_id': 'my-test-library-branch' }, 'metricValueSets': [ { 'metricName': 'library.googleapis.com/book/returned_count', 'metricValues': [ { 'int64Value': '23' } ] } ] } ] }" https://servicecontrol.googleapis.com/v1/services/endpointsapis.appspot.com:report