Registros de transferência do sistema de arquivos

Este documento descreve o formato atual do registro de transferência do sistema de arquivos.

Ver registros de transferência

As transferências do sistema de arquivos produzem registros de transferência detalhados que podem ser usados para verificar os resultados do job de transferência. Cada job produz uma coleção de registros de transferência que são armazenados no bucket do Cloud Storage do transer: o bucket de origem, de destino ou intermediário, dependendo da direção de transferência.

Os registros são gerados enquanto o trabalho de transferência está em execução. Os registros completos geralmente são disponibilizados até 15 minutos depois da conclusão do job.

Acessar registros no bucket do Cloud Storage

Os registros de transferência são armazenados no bucket do Cloud Storage da transferência no seguinte caminho:

bucket-name/storage-transfer/logs/transferJobs/job-name/transferOperations/operation-name

onde:

  • bucket-name é o nome do bucket do Cloud Storage envolvido nessa transferência.
  • job-name é o nome do job, conforme exibido na lista de jobs.
  • operation-name é o nome da operação de transferência individual, composta pelo carimbo de data/hora IS08601 e pelo ID gerado.

Os registros são agregados e armazenados como objetos. Cada lote de registros é nomeado de acordo com a hora de criação. Exemplo:

my bucket/storage-transfer/logs/transferOperations/job1/2019-10-19T10_52_56.519081644-07_00.log

Executar consultas do BigQuery em registros de transferência

Para executar consultas do BigQuery nos seus registros de transferência:

  1. Carregue os dados do registro CSV no BigQuery.

  2. Execute sua consulta do BigQuery.

Exemplo de consultas

Mostrar o número de arquivos que tentaram a transferência e se eles falharam ou foram concluídos

select ActionStatus, count(*) as num_files
from big-query-table
where Action="TRANSFER"
group by 1;

Em que big-query-table é o nome da tabela do BigQuery com o registro de transferência.

Exibir todos os arquivos que falharam na transferência

select Src_File_Path
from big-query-table
where Action="TRANSFER" and ActionStatus="FAILED";

Em que big-query-table é o nome da tabela do BigQuery com o registro de transferência.

Exibir a soma de verificação e o carimbo de data/hora de cada arquivo transferido com êxito

select Timestamp, Action, ActionStatus, Src_File_Path, Src_File_Size,
Src_File_Crc32C, Dst_Gcs_BucketName, Dst_Gcs_ObjectName, Dst_Gcs_Size,
Dst_Gcs_Crc32C, Dst_Gcs_Md5
from big-query-table
where Action="TRANSFER" and ActionStatus="SUCCEEDED";

Em que big-query-table é o nome da tabela do BigQuery com o registro de transferência.

Exibir todas as informações de erro dos diretórios que não foram transferidos

select FailureDetails_ErrorType, FailureDetails_GrpcCode, FailureDetails_Message
from big-query-table
where Action="FIND" and ActionStatus="FAILED";

Em que big-query-table é o nome da tabela do BigQuery com o registro de transferência.

Descrição do formato

Os registros de transferência do sistema de arquivos são salvos no formato de valores separados por tabulação (TSV) e contêm uma linha de cabeçalho com nomes de campo. A ordem em que os campos são exibidos geralmente é estável, mas não é garantida e deve ser inferida a partir da linha do cabeçalho.

Cada linha representa um único registro, que é uma atualização de status em parte da operação geral de transferência.

A tabela a seguir descreve os campos do arquivo de registros:

Campo de registro Descrição
Carimbo de data/hora Carimbo de data/hora compatível com ISO 8601 quando registramos o evento.
Nome da operação O nome da operação totalmente qualificado.
Ação

Descreve a ação dessa tarefa específica. Opções:

  • FIND: encontra tarefas a fazer, como listar arquivos locais
  • TRANSFER: transferência de arquivos
  • DELETE: exclui arquivos no destino
ActionStatus

O status de alto nível da ação. Opções:

  • SUCCEEDED: a ação foi concluída.
  • FAILED: a ação falhou. Há mais informações sobre a falha nos campos FailureDetails.
FailureDetails.ErrorType Uma string que representa o tipo de erro encontrado. Por exemplo, FILE_NOT_FOUND. Preenchido apenas se um erro for encontrado.
FailureDetails.GrpcCode Um valor de string do código RPC do Google. Por exemplo, FAILED_PRECONDITION. Preenchido apenas se um erro for encontrado.
FailureDetails.Message Uma mensagem de erro legível sobre a falha. Preenchido apenas se um erro for encontrado.
Src.Type String que descreve o tipo de sistema de armazenamento da origem. É sempre ON_PREM.
Src.File.Path Caminho do arquivo local transferido.
Src.File.LastModified A hora da última modificação do arquivo local em POSIX (mtime).
Src.FileSize O tamanho do arquivo em bytes.
Src.File.Crc32C A soma de verificação CRC32C do conteúdo do arquivo.
Dst.Type String que descreve o tipo de sistema de armazenamento de destino. É sempre GCS.
Dst.Gcs.BucketName O nome do bucket de destino do Cloud Storage.
Dst.Gcs.ObjectName O prefixo do objeto de destino.
Dst.Gcs.LastModified A hora da última modificação do objeto de destino em POSIX (mtime).
Dst.Gcs.Size O tamanho do objeto em bytes.
Dst.Gcs.Crc23C A soma de verificação CRC32C do conteúdo do objeto.
Dst.Md5 A soma de verificação MD5 do objeto final no Cloud Storage.

Exemplo de entrada de registro

Veja a seguir um exemplo de duas linhas de saída de registro, o cabeçalho e uma linha de dados:

Timestamp       OperationName   Action  ActionStatus    FailureDetails.ErrorType        FailureDetails.GrpcCode FailureDetails.Message     Src.Type        Src.File.Path   Src.File.LastModified   Src.File.Size   Src.File.Crc32C Dst.Type   Dst.Gcs.BucketName      Dst.Gcs.ObjectName      Dst.Gcs.LastModified    Dst.Gcs.Size    Dst.Gcs.Crc32C  Dst.Gcs.Md5
2019-10-18T21:06:17Z    transferOperations/agent-manual_transferJobs/OPI1494275376193533620_0000000001571432448     TRANSFER        SUCCEEDED                               ON_PREM_FILE    /mnt/disks/disk-1/directory1/file.txt      1561409931      406     3089075447      GCS_OBJECT      destination-gcs-bucket    file.txt  1571432776      406     3089075447      FDjya7dWbd0OrgnZ7g9ZJw==