Os registros de atividade do Compute Engine não são a mesma coisa que registros de auditoria. Os registros de auditoria contêm as mesmas informações que os registros de atividades herdadas e muito mais. Recomendamos que você use registros de auditoria em vez de registros de atividades. Se você já estiver usando registros de atividades, leia Como migrar de registros de atividades para registros de auditoria.
O Compute Engine fornece registros de atividade que permitem rastrear certos eventos que afetam o projeto, como chamadas de API e eventos de sistema. Os registros de atividades fornecem informações específicas sobre:
- Chamadas de API Compute Engine: os eventos
GCE_API_CALL
são chamadas de API que alteram o estado de um recurso. Por exemplo, as chamadas de API para criar um disco, atualizar metadados de instância, criar um grupo de instâncias, alterar um tipo de máquina, são gravadas nos registros de atividades. As chamadas de API que não atualizam um recurso, como solicitaçõesget
elist
não são registradas. - Registros de operação: os eventos
GCE_OPERATION_DONE
são registrados quando uma chamada de API que altera o estado de um recurso termina e o Compute Engine retorna um evento de operação concluído, gravado nos registros de atividades. - Registros do sistema: os eventos
GCE_SYSTEM_EVENT
são registrados quando o Compute Engine executa um evento do sistema. Ele é gravado nos registros de atividades. Por exemplo, um evento de manutenção transparente seria registrado como um evento de sistema.
Por exemplo, com um evento de API, um registro de atividade fornece detalhes, como o horário de início e de término de uma solicitação de API, os detalhes do corpo da solicitação, o usuário autorizado que fez a solicitação de API e o ponto final da solicitação. É possível baixar os registros de atividade para pesquisar solicitações específicas de API ou revisar eventos de sistema iniciados pelo Compute Engine.
Registros de atividade não fornecem informações de faturamento nem de uso sobre um projeto, como o tempo de execução de uma instância de máquina virtual ou quanto ela custa. Para registros de cobrança, veja o recurso exportação de faturamento. Para registros de uso, veja Como ver relatórios de uso.
Os registros de atividades são fornecidos como parte do serviço Cloud Logging. Para mais informações gerais sobre o Logging, leia a documentação do Cloud Logging.
Antes de começar
- Familiarize-se com o Cloud Logging.
-
Configure a autenticação, caso ainda não tenha feito isso.
A autenticação é
o processo de verificação da sua identidade para acesso a serviços e APIs do Google Cloud.
Para executar códigos ou amostras de um ambiente de desenvolvimento local, autentique-se no
Compute Engine da seguinte maneira.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
logging.logServiceIndexes.list
no projetologging.logServices.list
no projeto- No Console do Google Cloud, acesse a página Logging.
- No Explorador de registros, selecione e filtre o tipo de recurso na primeira lista suspensa.
- Na lista suspensa Todos os registros, selecione compute.googleapis.com/activity_log para ver os registros de atividade do Compute Engine.
compute.googleapis.com/activity_log
como valor do campolog
metadata
, que descreve informações comuns, como timestampstructPayload
, que inclui o conteúdo específico da entrada de registroGCE_API_CALL
. indica uma chamada da REST API que atualizou um recurso.GCE_OPERATION_DONE
. quando uma solicitação de APi é concluída, com sucesso ou não, este tipo de evento é registrado.GCE_SYSTEM_EVENT
. um evento de sistema iniciado pelo Compute Engine.
REST
Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Google Cloud.
Permissões exigidas para a tarefa
Para executar esta tarefa, é preciso ter a permissão a seguir:
Como visualizar registros
O registro de atividades é ativado por padrão para todos os projetos do Compute Engine.
Veja os registros de atividades de seu projeto por meio do Explorador de registros no console do Google Cloud:
Registros de roteamento
Para saber como exportar registros de atividades, leia Configurar e gerenciar coletores na documentação do Cloud Logging.
Como identificar arquivos de registros
Ao exportar registros para o Cloud Storage, os arquivos de registros são armazenados na estrutura descrita pela documentação dos objetos de entrada de registros.
Os arquivos de registros do Compute Engine são armazenados com a estrutura de diretório abaixo:
<bucket>/compute.googleapis.com/activity_log/<year>/<month>/<day>
Veja a seguir um exemplo de nome de arquivo de registro armazenado em um bucket do Cloud Storage chamado
my-bucket
:my-bucket/compute.googleapis.com/activity_log/2014/10/31/20:00:00_20:59:59_S0.json
No BigQuery, os registros de atividades são armazenados em um conjunto de tabelas, uma para cada tipo de registro e dia, nomeadas com o seguinte formato:
<dataset>.compute_googleapis_com_activity_log_YYYYMMDD
Para obter informações sobre como consultar registros de atividades no BigQuery, consulte Entradas de registro no BigQuery.
Como ler registros de atividades
Os registros de atividades são estruturados conforme descrito na documentação do tipo LogEntry.
Nos registros de atividade do Compute Engine, constam:
É possível obter mais detalhes sobre os campos comuns fornecidos com cada entrada de registro da descrição LogEntry, mas o conteúdo do payload das entradas do registro de atividades é específico do Compute Engine e é descrito abaixo.
Conteúdo de carga útil
O conteúdo de uma entrada de registro é fornecido no formato de objeto JSON e armazenado no campo
structPayload
. O campostructPayload
contém as seguintes informações:Campo Tipo Descrição actor
string E-mail da conta de usuário ou de serviço realizando a operação. Este é o mesmo que o user_id
.error
string São fornecidos detalhes de erro, caso ocorra algum durante esse evento. Isso é omitido quando não há erros. Erros geralmente impedem que uma solicitação seja concluída com êxito. Use esse campo para depurar uma solicitação com falha. event_subtype
string Descreve o subtipo específico como um método de API. Por exemplo, uma solicitação para inserir uma nova instância aparece como
compute.instances.insert
e uma solicitação para excluir um recurso Endereço aparece comocompute.addresses.delete
.Consulte a referência da API para ter acesso a uma lista abrangente de métodos da API.
event_timestamp_us
timestamp O timestamp do evento registrado em microssegundos desde a época padrão. Este é o mesmo que metadata.timestamp
.event_type
string Descreve o tipo geral de evento. Pode ser um dos seguintes valores:
info
string Um campo opcional com informações adicionais, se aplicável. Este campo é omitido se não há informações adicionais a exibir. operation
string Quando uma solicitação de API é feita para atualizar ou alterar quaisquer recursos, um objeto de operação correspondente é criado para rastrear a solicitação até a conclusão. Esta propriedade descreve o objeto da operação deste evento, fornecendo informações como o nome da operação, a zona ou a região da operação e o código da operação. As operações são zonais, regionais ou globais, dependendo do recurso a ser modificado.
request
JSON Contém o corpo da solicitação original da API. resource
JSON Descreve o recurso particular que está sendo modificado por este evento. Por exemplo, uma instância de máquina virtual é considerada um recurso, e uma propriedade de recurso de exemplo para uma VM tem a seguinte aparência: "resource": { "type": "instance", "name": "example-instance", "id": "0", "zone": "us-central1-f" }
Uma lista de tipos de recursos é descrita detalhadamente na referência da API.
Observação: se uma ação afetar vários recursos, pode haver várias entradas de registro com o mesmo
trace_id
.trace_id
string Um código de rastreamento fornecido pelo sistema, usado para agrupar registros relacionados, e acionados por uma única ação. Por exemplo: trace_id: "operation-1442436581415-51fe3700bd85a-7fd317e3-f1a3555e"
user_agent
string Descreve o cliente que realizou essa solicitação. Por exemplo, se você usou as bibliotecas de cliente do Cloud para Java para fazer uma solicitação, o user agent Google-API-Java-Client
.version
string A versão do formato de registro atual indica o esquema do registro do Compute Engine. A versão atual é 1.2. Observação: o controle de versão da Compute Engine API é separado do controle de versão do formato de registro.
warning
string Fornece detalhes de aviso caso ocorra algum durante esse evento. Um aviso é informativo e não afeta a solicitação, diferentemente dos erros. Exemplo de entrada de registros
Por exemplo, um exemplo de entrada de registro que descreve uma solicitação de API para criar uma VM tem a seguinte aparência:
{ "log": "compute.googleapis.com/activity_log", "insertId": "2015-09-16|13:49:42.532185-07|10.106.9.208|335899593", "metadata": { "severity": "INFO", "projectId": "835469197146", "serviceName": "compute.googleapis.com", "zone": "us-central1-f", "labels":{ "compute.googleapis.com/resource_id":"0", "compute.googleapis.com/resource_name":"example-instance", "compute.googleapis.com/resource_type":"instance", "compute.googleapis.com/resource_zone":"us-central1-f" }, "timestamp": "2015-09-16T20:49:42.423637Z" }, "structPayload": { "version": "1.2", "trace_id": "operation-1442436581415-51fe3700bd85a-7fd317e3-f1a3555e", "event_timestamp_us": "1442436582423637", "event_type": "GCE_API_CALL", "event_subtype": "compute.instances.insert", "resource": { "type": "instance", "name": "example-instance", "id": "0", "zone": "us-central1-f" }, "actor": { "user": "user@example.com" }, "ip_address": "", "user_agent": "apitools-client/1.0", "request": { "url": "https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/instances", "body": "{ \"canIpForward\":false, \"description\":\"\", \"disks\":[{ \"autoDelete\":true, \"boot\":true, \"deviceName\":\"example-instance\", \"initializeParams\":{ \"diskSizeGb\":\"10\", \"diskType\":\"https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/diskTypes/pd-standard\", \"sourceImage\":\"https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/debian-8-jessie-v20150818\" }, \"mode\":\"READ_WRITE\", \"type\":\"PERSISTENT\" }], \"machineType\":\"https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/machineTypes/n1-standard-1\", \"metadata\":{ \"items\":[] }, \"name\":\"example-instance\", \"networkInterfaces\":[{ \"accessConfigs\":[{ \"name\":\"External NAT\", \"type\":\"ONE_TO_ONE_NAT\" }], \"network\":\"https://www.googleapis.com/compute/v1/projects/myproject/global/networks/default\" }], \"scheduling\":{ \"automaticRestart\":true, \"onHostMaintenance\":\"MIGRATE\", \"preemptible\":false }, \"serviceAccounts\":[{ \"email\":\"default\", \"scopes\":[ \"https://www.googleapis.com/auth/devstorage.read_only\", \"https://www.googleapis.com/auth/logging.write\" ] }], \"tags\":{ \"items\":[] }, \"zone\":\"https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f\" }" }, "operation": { "type": "operation", "name": "operation-1442436581415-51fe3700bd85a-7fd317e3-f1a3555e", "id": "291347737657178184", "zone": "us-central1-f" } } }
Entradas de registro de atividades descontinuadas
As seguintes entradas de registro de atividades serão desativadas, sem substituição, em 1º de junho de 2020:
Tipo de recurso monitorado Subtipo de evento gce_backend_service
BackendServiceConfigProgramming
gce_instance
RE_ENCRYPT_SSL_CERTIFICATE_FLOW
gce_instance
addFirewallRuleToSecurityPolicy
gce_instance
attachCloudLink
gce_instance
attachFirewallSecurityPolicy
gce_instance
compute.instanceGroupManagers.updateHealth
gce_instance
compute.instanceGroups.detachHealthCheck
gce_instance
compute.instanceNetworkConfig.updateName
gce_instance
compute.regionInstanceGroups.attachHealthCheck
gce_instance
compute.regionInstanceGroups.detachHealthCheck
gce_instance
createFirewallSecurityPolicy
gce_instance
deleteFirewallSecurityPolicy
gce_instance
detachFirewallSecurityPolicy
gce_instance
patchFirewallRuleInSecurityPolicy
gce_instance
removeCloudLink
gce_instance
removeFirewallRuleFromSecurityPolicy
gce_instance
updateFirewallSecurityPolicy
gce_instance
updateVpnTunnel
gce_instance_group
compute.instanceGroups.attachHealthCheck
gce_instance_group
compute.instanceGroups.attachNetworkInterfaces
gce_instance_group
compute.instanceGroups.detachHealthCheck
gce_instance_group
compute.regionInstanceGroups.attachHealthCheck
gce_instance_group
compute.regionInstanceGroups.detachHealthCheck
gce_instance_template
compute.zoneInstanceTemplates.insert
gce_network
compute.networks.switchLegacyToCustomMode
gce_project
compute.projects.moveProjectNetworking
gce_reserved_address
compute.addresses.insertDnsForwarding
gce_reserved_address
compute.addresses.insertNatAddress
gce_ssl_certificate
RE_ENCRYPT_SSL_CERTIFICATE_FLOW
gce_ssl_certificate
SslCertificateAddManagedCertificateChallenge
gce_ssl_certificate
SslCertificateProvisionManagedCertificate
gce_ssl_certificate
SslCertificateRemoveManagedCertificateChallenge
gce_subnetwork
compute.subnetworks.createOrUpdateVirtualSubnetwork
vpn_tunnel
updateVpnTunnel
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2024-11-12 UTC.
-