Nesta página, você aprende a usar a Service Infrastructure para que os serviços gerenciados enviem registros a projetos tanto de produtor quanto de consumidor de serviço.
A API Service Control aceita dados de registro estruturados ou não estruturados, que são agrupados em lotes e encaminhados para o Cloud Logging. Você e os usuários dos seus serviços gerenciados podem usar o Console do Google Cloud e o Console de APIs do Google para conferir os dados de registro ou usar a API Cloud Logging para acessar os dados programaticamente.
Assim como o próprio Logging permite que um serviço gerenciado gere registros para uso por você como desenvolvedor do serviço gerenciado, a API Service Control também permite gerar registros destinados a seus usuários. Isso possibilita que seus usuários entendam e diagnostiquem o uso que fazem do seu serviço gerenciado.
Como configurar registros
Antes de enviar registros para a API Service Control, você precisa especificar três informações diferentes na sua configuração de serviço:
Nomes dos registros: você pode ter um ou mais registros distintos. Cada registro é identificado por um nome exclusivo. Registros individuais permitem isolar tipos diferentes de dados caso seja mais fácil visualizá-los ou usá-los dessa forma.
Recursos monitorados: um recurso monitorado representa uma entidade de nuvem que produz alguns dados de registro. Para definir um recurso monitorado na configuração do serviço, consulte monitored_resource.proto para ver a especificação técnica. Recomendamos que você use o mesmo recurso monitorado para monitoramento e geração de registros.
Configuração de registro: permite especificar o recurso monitorado associado a qualquer fluxo de registros e o projeto de produtor ou consumidor de serviço em que cada registro será enviado. Para configurar a associação de registros, consulte logging.proto para a especificação técnica.
No exemplo da configuração de serviço
a seguir, o registro activity_log
é configurado para ser enviado ao consumidor de serviço.
# 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 log name to be used.
logs:
- name: activity_log
# The logging configuration.
logging:
consumer_destinations:
- monitored_resource: library.appspot.com/Branch
logs:
- activity_log
Depois de criar essa configuração, você precisará seguir as instruções de Como gerenciar configurações de serviço e Como gerenciar lançamentos de serviço para enviar a configuração de serviço para a API Service Management, que configurará o recurso monitorado no Cloud Logging.
Como relatar registros
Depois que o push da configuração do serviço for concluído, chame a
API Service Control para relatar entradas de registro. O exemplo a seguir usa o
comando gcurl
para demonstrar a chamada. Para saber como configurar isso, consulte
Primeiros passos com a API Service Control.
gcurl -d "{ 'operations': [ { 'operationId': 'e8bf36ef-f9b5-4274-b4f9-079a3731e6e5', 'operationName': 'New book arrived', 'consumerId': 'projects/library-consumer', 'startTime': '`date +%FT%T%:z`', 'endTime': '`date +%FT%T%:z`', 'labels': { 'location': 'us-east1', 'branch_id': 'my-test-library-branch' }, 'logEntries': [ { 'severity': 'INFO', 'textPayload': 'new book arrived', 'name': 'activity_log' } ] } ] }" https://servicecontrol.googleapis.com/v1/services/endpointsapis.appspot.com:report