יומני העברה של מערכת קבצים

במסמך הזה מתואר הפורמט הנוכחי של יומן העברת מערכת הקבצים.

צפייה ביומני ההעברה

העברות של מערכת קבצים יוצרות יומני העברה מפורטים שבעזרתם אפשר לאמת את התוצאות של עבודת ההעברה. כל משימה יוצרת אוסף של יומני העברה שמאוחסנים בקטגוריה של Cloud Storage שמשויכת להעברה: קטגוריית המקור, קטגוריית היעד או קטגוריית הביניים, בהתאם לכיוון ההעברה. לכל מי שיש גישה לקטגוריה של Cloud Storage יש גישה ליומני ההעברה.

היומנים נוצרים בזמן שהעברת המשימות פועלת. היומנים המלאים זמינים בדרך כלל תוך 15 דקות מסיום העבודה.

הצגת היומנים בקטגוריה של Cloud Storage

יומני ההעברה מאוחסנים בקטגוריה של Cloud Storage של ההעברה בנתיב הבא:

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

כאשר רכיבי הנתיב הם:

  • ‫bucket-name הוא השם של הקטגוריה ב-Cloud Storage שמשתתפת בהעברה הזו.
  • ‫job-name: שם המשרה, כפי שמופיע ברשימת המשרות.
  • ‫operation-name הוא השם של פעולת ההעברה הספציפית, שכולל את חותמת הזמן בפורמט ISO8601 ואת המזהה שנוצר.

היומנים נצברים ומאוחסנים כאובייקטים. השם של כל חבילת יומנים הוא חותמת הזמן שבה היא נוצרה. לדוגמה:

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

הרצת שאילתות BigQuery ביומני העברה

כדי להריץ שאילתות BigQuery על יומני ההעברה:

  1. טעינת נתוני יומן בפורמט CSV ל-BigQuery

  2. מריצים את השאילתה ב-BigQuery.

שאילתות לדוגמה

הצגת מספר הקבצים שניסו להעביר והאם הם נכשלו או הצליחו

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

כאשר big-query-table הוא השם של הטבלה ב-BigQuery שמכילה את יומן ההעברה.

הצגת כל הקבצים שההעברה שלהם נכשלה

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

כאשר big-query-table הוא השם של הטבלה ב-BigQuery שמכילה את יומן ההעברה.

הצגת סכום ביקורת וחותמת זמן לכל קובץ שהועבר בהצלחה

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

כאשר big-query-table הוא השם של הטבלה ב-BigQuery שמכילה את יומן ההעברה.

הצגת כל פרטי השגיאה של ספריות שההעברה שלהן נכשלה

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

כאשר big-query-table הוא השם של הטבלה ב-BigQuery שמכילה את יומן ההעברה.

תיאור הפורמט

יומני העברה של מערכת קבצים נשמרים בפורמט TSV (ערכים מופרדים בטאבים), והם מכילים שורת כותרת עם שמות השדות. סדר השדות בדרך כלל קבוע, אבל אין הבטחה כזו, ולכן צריך להסיק אותו משורת הכותרת.

כל שורה מייצגת רשומה אחת ביומן, כלומר עדכון סטטוס לגבי חלק מפעולת ההעברה הכוללת.

בטבלה הבאה מתוארים השדות בקובץ היומן:

שדה ביומן תיאור
חותמת זמן חותמת זמן בפורמט תואם לתקן ISO 8601, שבה תועד האירוע.
שם הפעולה שם הפעולה שמוגדר במלואו.
פעולה

תיאור הפעולה של המשימה הספציפית הזו. אחת מהאפשרויות הבאות:

  • FIND: מציאת עבודה לביצוע, כמו רישום קבצים בשרת מקומי
  • העברה: העברת קבצים
  • ‫DELETE: מחיקת קבצים ביעד
ActionStatus

הסטטוס הכללי של הפעולה. אחת מהאפשרויות הבאות:

  • SUCCEEDED: הפעולה הושלמה בהצלחה.
  • נכשל: הפעולה נכשלה. פרטים נוספים על הכשל מופיעים בשדות FailureDetails.
FailureDetails.ErrorType מחרוזת שמייצגת את סוג השגיאה שנתקלתם בה. לדוגמה, FILE_NOT_FOUND. השדה הזה מאוכלס רק אם נתקלים בשגיאה.
FailureDetails.GrpcCode ערך המחרוזת של קוד ה-RPC של Google. לדוגמה, FAILED_PRECONDITION. השדה הזה מאוכלס רק אם נתקלים בשגיאה.
FailureDetails.Message הודעת שגיאה קריאה לאנשים לגבי הכשל. השדה הזה מאוכלס רק אם נתקלים בשגיאה.
Src.Type מחרוזת שמתארת את סוג מערכת האחסון של המקור. הערך הזה הוא תמיד ON_PREM.
Src.File.Path הנתיב של הקובץ המקומי שהועבר.
Src.File.LastModified זמן השינוי (mtime) של קובץ מקומי בפורמט POSIX.
Src.FileSize גודל הקובץ בבייטים.
Src.File.Crc32C סיכום הביקורת (checksum)‏ CRC32C של תוכן הקובץ.
Dst.Type מחרוזת שמתארת את סוג מערכת האחסון של היעד. הערך הזה תמיד יהיה GCS.
Dst.Gcs.BucketName שם קטגוריית היעד של Cloud Storage.
Dst.Gcs.ObjectName הקידומת של אובייקט היעד.
Dst.Gcs.LastModified זמן השינוי (mtime) של אובייקט היעד בפורמט POSIX.
Dst.Gcs.Size גודל האובייקט בבייטים.
Dst.Gcs.Crc23C סיכום הביקורת (checksum)‏ CRC32C של תוכן האובייקט.
Dst.Md5 סיכום הביקורת (checksum) מסוג MD5 של האובייקט הסופי ב-Cloud Storage.

דוגמה לרשומה ביומן

בדוגמה הבאה מוצגות שתי שורות של פלט יומן, הכותרת ושורת נתונים:

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