Este documento descreve o formato atual do registo de transferência do sistema de ficheiros.
Veja os registos de transferência
As transferências do sistema de ficheiros produzem registos de transferências detalhados que pode usar para validar os resultados da tarefa de transferência. Cada tarefa produz uma coleção de registos de transferência que são armazenados no contentor do Cloud Storage da transferência: o contentor de origem, o contentor de destino ou o contentor intermédio, consoante a direção da transferência.
Os registos são produzidos enquanto a tarefa de transferência está em execução. Normalmente, os registos completos estão disponíveis no prazo de 15 minutos após a conclusão da tarefa.
Veja os registos no contentor do Cloud Storage
Os registos de transferência são armazenados no contentor do Cloud Storage da transferência no seguinte caminho:
bucket-name/storage-transfer/logs/transferJobs/job-name/transferOperations/operation-name
where:
bucket-name
é o nome do contentor do Cloud Storage envolvido nesta transferência.job-name
é o nome da tarefa, conforme apresentado na lista de tarefas.operation-name
é o nome da operação de transferência individual, composto pela indicação de tempo ISO8601 e pelo ID gerado.
Os registos são agregados e armazenados como objetos. O nome de cada lote de registos é definido segundo a respetiva hora de criação. Por exemplo:
my
bucket/storage-transfer/logs/transferOperations/job1/2019-10-19T10_52_56.519081644-07_00.log
Execute consultas do BigQuery nos registos de transferências
Para executar consultas do BigQuery nos registos de transferência:
Execute a sua consulta do BigQuery.
Consultas de exemplo
Apresente o número de ficheiros que tentaram a transferência e se esta falhou ou teve êxito
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 que contém o registo de transferência.
Apresentar todos os ficheiros cuja transferência falhou
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 que contém o registo de transferência.
Apresentar a soma de verificação e a data/hora de cada ficheiro 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 que contém o registo de transferência.
Apresentar todas as informações de erro para diretórios cuja transferência falhou
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 que contém o registo de transferência.
Descrição do formato
Os registos de transferência do sistema de ficheiros são guardados no formato de valores separados por tabulações (TSV) e contêm uma linha de cabeçalho com nomes de campos. A ordem em que os campos são apresentados é geralmente estável, mas não é garantida e tem de ser inferida a partir da linha de cabeçalho.
Cada linha representa um único registo, ou seja, uma atualização do estado de parte da operação de transferência geral.
A tabela seguinte descreve os campos no ficheiro de registo:
Campo de registo | Descrição |
---|---|
Data/hora | Data/hora em conformidade com a norma ISO 8601 em que registámos o evento. |
Nome da operação | O nome da operação totalmente qualificado. |
Ação | Descreve a ação desta tarefa específica. Uma das seguintes opções:
|
ActionStatus | O estado de nível superior da ação. Uma das seguintes opções:
|
FailureDetails.ErrorType | Uma string que representa o tipo de erro encontrado. Por exemplo, FILE_NOT_FOUND. Preenchido apenas se tiver sido encontrado um erro. |
FailureDetails.GrpcCode | Um valor de string do código RPC da Google. Por exemplo, FAILED_PRECONDITION. Preenchido apenas se tiver sido encontrado um erro. |
FailureDetails.Message | Uma mensagem de erro legível para humanos relativa à falha. Preenchido apenas se tiver sido encontrado um erro. |
Src.Type | String que descreve o tipo de sistema de armazenamento da origem. Esta opção está sempre ON_PREM. |
Src.File.Path | Caminho do ficheiro no local transferido. |
Src.File.LastModified | A data/hora de modificação POSIX (mtime) do ficheiro no local. |
Src.FileSize | O tamanho do ficheiro em bytes. |
Src.File.Crc32C | A soma de verificação CRC32C do conteúdo do ficheiro. |
Dst.Type | String que descreve o tipo de sistema de armazenamento de destino. Esta opção está sempre
GCS . |
Dst.Gcs.BucketName | O nome do contentor de destino do Cloud Storage. |
Dst.Gcs.ObjectName | O prefixo do objeto para o objeto de destino. |
Dst.Gcs.LastModified | A hora de modificação POSIX (mtime) do objeto de destino. |
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 do registo
Segue-se um exemplo de duas linhas de saída do registo, 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==