Como visualizar registros de atividades

O uso de registros de atividade será suspenso em uma versão futura. Use registros de auditoria. Consulte Como migrar de registros de atividades para registros de auditoria para obter mais informações.

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 da 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ções get e list 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 endpoint 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 ambiente 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.

Registros de atividade são fornecidos como parte do serviço Stackdriver Logging. Para obter mais informações sobre a geração de registros em geral, leia a documentação do Stackdriver Logging.

Antes de começar

Permissões exigidas para a tarefa

Para executar esta tarefa, é preciso ter as permissões a seguir.

  • logging.logServiceIndexes.list no projeto
  • logging.logServices.list no projeto

Como visualizar registros

O registro de atividades é ativado por padrão para todos os projetos do Compute Engine.

Veja os registros de atividades do projeto com o Visualizador de registros no Console do Google Cloud Platform:

  1. No Console do GCP, acesse a página Logging.

    Acesse a página de geração de registros

  2. No Visualizador de registros, selecione e filtre o tipo de recurso na primeira lista suspensa.
  3. Na lista suspensa Todos os registros, selecione compute.googleapis.com/activity_log para ver os registros de atividade do Compute Engine.

Como exportar registros

Para saber como exportar registros de atividades, leia Como exportar com o Visualizador de registros na documentação do Stackdriver 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 intervalo 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:

  • compute.googleapis.com/activity_log como valor do campo log
  • metadata, que descreve informações comuns, como timestamp
  • structPayload, que contém o conteúdo específico da entrada de registro

É 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 campo structPayload 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 como compute.addresses.delete.

Consulte a referência da API para ter acesso a uma lista abrangente de métodos da API.

event_timestamp_us carimbo de data/hora 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.

podendo ter um dos seguintes valores:

  • GCE_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.
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. 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://compute.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://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/diskTypes/pd-standard\",
            \"sourceImage\":\"https://compute.googleapis.com/compute/v1/projects/debian-cloud/global/images/debian-8-jessie-v20150818\"
          },
          \"mode\":\"READ_WRITE\",
          \"type\":\"PERSISTENT\"
        }],
        \"machineType\":\"https://compute.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://compute.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://compute.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 em 1º de março de 2020:

Tipo de recurso monitorado Subtipo de evento
gce_instance removeFirewallRuleFromSecurityPolicy
gce_instance patchFirewallRuleInSecurityPolicy
gce_instance addFirewallRuleToSecurityPolicy
gce_instance attachFirewallSecurityPolicy
gce_instance createFirewallSecurityPolicy
gce_instance deleteFirewallSecurityPolicy
gce_instance detachFirewallSecurityPolicy
gce_instance updateFirewallSecurityPolicy
gce_instance RE_ENCRYPT_SSL_CERTIFICATE_FLOW
gce_network compute.networks.switchLegacyToCustomMode
gce_ssl_certificate SslCertificateAddManagedCertificateChallenge
gce_ssl_certificate SslCertificateProvisionManagedCertificate
gce_ssl_certificate SslCertificateRemoveManagedCertificateChallenge
gce_project compute.projects.moveProjectNetworking
gce_ssl_certificate RE_ENCRYPT_SSL_CERTIFICATE_FLOW
gce_instance_group compute.instanceGroups.attachNetworkInterfaces
gce_instance_template compute.zoneInstanceTemplates.insert
gce_instance attachCloudLink
gce_instance removeCloudLink
gce_reserved_address compute.addresses.insertDnsForwarding
gce_reserved_address compute.addresses.insertNatAddress
gce_subnetwork compute.subnetworks.createOrUpdateVirtualSubnetwork
gce_instance compute.regionInstanceGroups.attachHealthCheck
gce_instance compute.regionInstanceGroups.detachHealthCheck
gce_instance compute.instanceGroups.detachHealthCheck
gce_instance_group compute.instanceGroups.attachHealthCheck
gce_instance_group compute.instanceGroups.detachHealthCheck
gce_instance_group compute.regionInstanceGroups.attachHealthCheck
gce_instance_group compute.regionInstanceGroups.detachHealthCheck
vpn_tunnel updateVpnTunnel
gce_instance updateVpnTunnel
gce_backend_service BackendServiceConfigProgramming
gce_instance compute.instanceGroupManagers.updateHealth
gce_instance compute.instanceNetworkConfig.updateName
Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Documentação do Compute Engine