Logs für Dateisystemübertragungen

In diesem Dokument wird das aktuelle Protokollformat für die Dateisystemübertragung beschrieben.

Übertragungslogs ansehen

Dateisystemübertragungen erzeugen detaillierte Übertragungslogs, mit denen Sie die Ergebnisse des Übertragungsjobs prüfen können. Jeder Job erzeugt eine Sammlung von Übertragungslogs, die im Cloud Storage-Bucket der Übertragung gespeichert werden: je nach Übertragungsrichtung im Quell-, Ziel- oder Zwischen-Bucket.

Logs werden erstellt, während der Übertragungsjob ausgeführt wird. Die vollständigen Logs stehen normalerweise innerhalb von 15 Minuten nach Abschluss des Jobs zur Verfügung.

Logs im Cloud Storage-Bucket ansehen

Übertragungslogs werden im Cloud Storage-Bucket der Übertragung unter folgendem Pfad gespeichert:

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

Dabei gilt:

  • bucket-name ist der Name des Cloud Storage-Buckets, der an dieser Übertragung beteiligt ist.
  • job-name ist der Jobname, wie in der Jobliste angezeigt.
  • operation-name ist der Name des einzelnen Übertragungsvorgangs, der aus dem Zeitstempel IS08601 und der generierten ID besteht.

Logs werden zusammengefasst und als Objekte gespeichert. Jeder Batch Logs wird nach seiner Erstellungszeit benannt. Beispiel:

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

BigQuery-Abfragen für Übertragungslogs ausführen

So führen Sie BigQuery-Abfragen zu Ihren Übertragungslogs aus:

  1. CSV-Logdaten in BigQuery laden

  2. Führen Sie die BigQuery-Abfrage aus.

Beispielabfragen

Anzahl der Dateien mit versuchter Übertragung und Status „Fehlgeschlagen“/„Erfolg“ ansehen

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

Dabei ist big-query-table der Name der BigQuery-Tabelle, die das Übertragungslog enthält.

Alle Dateien ansehen, deren Übertragung fehlgeschlagen ist

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

Dabei ist big-query-table der Name der BigQuery-Tabelle, die das Übertragungslog enthält.

Prüfsumme und Zeitstempel für jede erfolgreich übertragene Datei anzeigen

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";

Dabei ist big-query-table der Name der BigQuery-Tabelle, die das Übertragungslog enthält.

Alle Fehlerinformationen für Verzeichnisse ansehen, die nicht übertragen werden konnten

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

Dabei ist big-query-table der Name der BigQuery-Tabelle, die das Übertragungslog enthält.

Formatbeschreibung

Dateisystemübertragungsprotokolle werden im TSV-Format (Tabulatorgetrennte Werte) gespeichert und enthalten eine Kopfzeile mit Feldnamen. Die Reihenfolge, in der die Felder angezeigt werden, ist im Allgemeinen stabil, aber nicht garantiert und muss aus der Kopfzeile abgeleitet werden.

Jede Zeile steht für einen einzelnen Logdatensatz, der Status einer Aktualisierung des gesamten Übertragungsvorgangs.

In der folgenden Tabelle werden die Felder in der Logdatei beschrieben:

Logfeld Beschreibung
Timestamp ISO 8601-konformer Zeitstempel, wenn wir das Ereignis erfassen.
Name des Vorgangs: Der vollständig qualifizierte Vorgangsname.
Aktion

Beschreibt die Aktion dieser bestimmten Aufgabe. Eines der folgenden Betriebssysteme:

  • FIND: Arbeit suchen, z. B. um lokale Dateien aufzulisten
  • ÜBERTRAGEN: Dateien übertragen
  • DELETE: Dateien am Ziel löschen
ActionStatus

Der übergeordnete Status der Aktion. Eines der folgenden Betriebssysteme:

  • SUCCEEDED: Die Aktion wurde erfolgreich abgeschlossen.
  • FAILED: Die Aktion ist fehlgeschlagen. Weitere Einzelheiten zum Fehler finden Sie in den Feldern FailureDetails.
FailureDetails.ErrorType Ein String, der den aufgetretenen Fehlertyp darstellt. Beispiel: FILE_NOT_FOUND. Wird nur gefüllt, wenn ein Fehler aufgetreten ist.
FailureDetails.GrpcCode Ein Stringwert des Google-RPC-Codes. Beispiel: FAILED_PRECONDITION. Wird nur gefüllt, wenn ein Fehler aufgetreten ist.
FailureDetails.Message Eine für Menschen lesbare Fehlermeldung für den Fehler. Wird nur gefüllt, wenn ein Fehler aufgetreten ist.
Src.Type String, der den Speichersystemtyp der Quelle beschreibt. Dies ist immer ON_PREM.
Src.File.Path Pfad der übertragenen lokalen Datei.
Src.File.LastModified Die POSIX-Änderungszeit (mtime) der lokalen Datei.
Src.FileSize Die Dateigröße in Byte.
Src.File.Crc32C Die CRC32C-Prüfsumme des Dateiinhalts.
Dst.Type String, der den Typ des Zielspeichersystems beschreibt. Dies ist immer GCS.
Dst.Gcs.BucketName Der Name des Cloud Storage-Ziel-Buckets.
Dst.Gcs.ObjectName Das Objektpräfix für das Zielobjekt.
Dst.Gcs.LastModified Die POSIX-Zeitangabe des Zielobjekts (mtime) des Zielobjekts.
Dst.Gcs.Size Die Objektgröße in Byte.
Dst.Gcs.Crc23C Die CRC32C-Prüfsumme des Objektinhalts
Dst.Md5 Die MD5-Prüfsumme des letzten Objekts in Cloud Storage.

Beispiel für einen Logeintrag

Das folgende Beispiel zeigt zwei Zeilen der Logausgabe, den Header und eine Datenzeile:

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==