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

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

מידע על מאגרי נתונים נצברים

מאגר נתונים מצטבר דומה למאגר נתונים ברמת הפרויקט, בכך שהוא מכיל מסננים ויעד. עם זאת, Log Router שולח ל-sink מצטבר את הרשומות הבאות ביומן:

  • כל רשומות היומן שמקורן בתיקייה או בארגון.
  • כל רשומות היומן שמקורן במשאבי הצאצא של התיקייה או הארגון.

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

אם יש יעד מצטבר בהיררכיית המשאבים של רשומה ביומן, נתב היומנים שולח את הרשומה הזו ליעדים האלה. מאגרי נתונים מסוג aggregated יכולים להיות מסוג intercepting או non-intercepting, ולכן יכול להיות ש-Log Router לא ישלח רשומה ביומן שמנותבת על ידי מאגר נתונים מסוג aggregated שנשלח למאגרי נתונים ברמת הפרויקט.

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

מאגר נתונים מסוג intercepting aggregated sink מונע ניתוב של רשומות ביומן למאגרי נתונים במשאבי צאצא, למעט מאגרי הנתונים מסוג _Required במשאבים שבהם נוצרו הרשומות ביומן. מאגר נתונים מצטבר שחוסם את הנתונים יכול להיות שימושי כדי למנוע אחסון של עותקים כפולים של רשומות ביומן בכמה מקומות.

לדוגמה, נניח שאתם צריכים להפעיל את יומני הביקורת Data Access למטרות ביקורת. כדי לפשט את הניתוח, כדאי לאחסן את היומנים האלה במיקום מרכזי. עם זאת, מטעמי אבטחה ועלות, אתם רוצים גם למנוע את האחסון של היומנים האלה ברמת הפרויקט. בתרחיש הזה, אפשר ליצור sink מצטבר שחוסם את הנתונים.

יעד מצטבר שלא חוסם

מאגר נתונים משולב שלא מיירט לא משפיע על האופן שבו רשומות ביומן מנותבות למאגרי נתונים אחרים. כלומר, גם כש<b>רשומה ביומן</b> תואמת למסנן של אובייקט sink מצטבר שלא חוסם, ה<b>רשומה ביומן</b> הזו מועברת לאובייקטים אחרים בהיררכיית המשאבים של ה<b>רשומה ביומן</b>. מאגר נתונים משולב שלא חוסם מאפשר לכם לשמור על נראות של רשומות ביומן במשאבים שבהם הן נוצרו.

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

דוגמאות לתכנון מסלול

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

דוגמה: לא קיימים מאגרי נתונים מצטברים

אם אין מאגרי נתונים משולבים בהיררכיית המשאבים של רשומת היומן, רשומת היומן נשלחת למאגרי היומנים בפרויקט שממנו היא מגיעה. אובייקט sink ברמת הפרויקט מעביר את רשומת היומן ליעד של אובייקט ה-sink אם רשומת היומן תואמת למסנן ההכללה של אובייקט ה-sink, אבל לא תואמת לאף אחד ממסנני ההחרגה של אובייקט ה-sink.

דוגמה: קיים מאגר נתונים מצטבר שלא מבצע יירוט

נניח שקיים יעד מצטבר שלא מיירט ביררכיית המשאבים עבור רשומה ביומן. אחרי שהכלי Log Router שולח את רשומת היומן אל יעד מצטבר שלא מבצע יירוט, קורה הדבר הבא:

  1. אובייקט sink מצטבר שלא מיירט את הרשומה מעביר אותה ליעד של אובייקט ה-sink אם היא תואמת למסנן ההכללה אבל לא תואמת לאף מסנן החרגה.

  2. הכלי Log Router שולח את רשומת היומן אל יעד היומן בפרויקט שבו נוצרה רשומת היומן.

    אובייקט sink ברמת הפרויקט מעביר את רשומת היומן ליעד של אובייקט ה-sink אם רשומת היומן תואמת למסנן ההכללה של אובייקט ה-sink, אבל לא תואמת לאף אחד ממסנני ההחרגה של אובייקט ה-sink.

דוגמה: קיים מאגר נתונים מצטבר שמיירט נתונים

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

  • הרשומה ביומן תואמת למסנן ההכללה אבל לא תואמת לאף מסנן החרגה:

    1. רשומת היומן מנותבת ליעד של ה-sink המצטבר שחוסם את הגישה.
    2. הרשומה ביומן נשלחת אל יעד _Required בפרויקט שבו נוצרה הרשומה ביומן.
  • רשומת היומן לא תואמת למסנן ההכללה או שהיא תואמת לפחות למסנן החרגה אחד:

    1. הרשומה ביומן לא מנותבת על ידי מאגר היעד המצטבר שחוצץ בין המקור ליעד.
    2. הכלי Log Router שולח את רשומת היומן אל יעד היומן בפרויקט שבו נוצרה רשומת היומן.

      אובייקט sink ברמת הפרויקט מעביר את רשומת היומן ליעד של אובייקט ה-sink אם רשומת היומן תואמת למסנן ההכללה של אובייקט ה-sink, אבל לא תואמת לאף אחד ממסנני ההחרגה של אובייקט ה-sink.

יעדים נתמכים ל-aggregated sinks

בקטע הזה מפורטים היעדים שנתמכים עבור מאגרי נתונים מצטברים.

כיורים עם מנגנון למניעת סתימות

יעד של מאגר נתונים מצטבר שחוצה פרויקטים חייב להיות פרויקטGoogle Cloud .

פריטי ה-sink ביומן בפרויקט היעד מעבירים את רשומות היומן ליעדים שלהן. כל היעדים נתמכים, חוץ מפרויקטים. לדוגמה, יכול להיות שפריטי ה-sink ביומן בפרויקט היעד ינתבו מחדש רשומות ביומן לקטגוריית יומן.

כיורים שלא מיירטים

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

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

היעדים הבאים נתמכים:

פרויקטGoogle Cloud

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

פריטי ה-sink ביומן שנוצרו על ידי המערכת בפרויקט היעד לא כוללים רשומות ביומן שמועברות אל _Required קטגוריית היומן בפרויקט המקור. לדוגמה, אם מעבירים יומנים של פעילות אדמין לפרויקט אחר, גם _Required וגם _Default ב-log sinks בפרויקט היעד לא יכללו את רשומות היומן האלה. כדי לאחסן את רשומות היומן האלה, צריך לעדכן את _Default sink של היומן בפרויקט היעד או ליצור sink של יומן בהתאמה אישית.

קטגוריה ביומן

בוחרים ביעד הזה כשרוצים לאחסן את נתוני היומן במשאבים שמנוהלים על ידי Cloud Logging. אפשר להציג ולנתח נתוני יומנים שמאוחסנים בדלי יומנים באמצעות שירותים כמו Logs Explorer ו-Observability Analytics.

אם רוצים לצרף את נתוני היומן לנתונים עסקיים אחרים, אפשר לאחסן את נתוני היומן בקטגוריה ביומן וליצור קבוצת נתונים מקושרת ב-BigQuery. מערך נתונים מקושר ב-BigQuery הוא לקריאה בלבד, אבל אפשר להריץ עליו שאילתות כמו על כל מערך נתונים אחר ב-BigQuery.

מערך נתונים ב-BigQuery
בוחרים ביעד הזה כשרוצים לצרף את נתוני היומן לנתונים עסקיים אחרים. צריך להפעיל הרשאות כתיבה למערך הנתונים שאתם מציינים. לא מגדירים את היעד של sink להיות מערך נתונים מקושר ב-BigQuery. מערכי נתונים מקושרים ב-BigQuery הם לקריאה בלבד.
קטגוריה של Cloud Storage
בוחרים ביעד הזה כשרוצים לאחסן את נתוני היומן לטווח ארוך. הקטגוריה של Cloud Storage יכולה להיות בפרויקט שממנו מגיעים רשומות היומן, או בפרויקט אחר. רשומות ביומן מאוחסנות כקובצי JSON.
נושא Pub/Sub
בוחרים ביעד הזה כשרוצים לייצא את נתוני היומן מ-Google Cloud ואז להשתמש בשילובים עם צד שלישי כמו Splunk או Datadog. רשומות היומן מעוצבות כ-JSON ואז מנותבות לנושא Pub/Sub.

שיטות מומלצות

מומלץ שהיעד של מאגר נתונים מצטבר יהיה פרויקט Google Cloud . כשמשתמשים ביעד הזה, פריטי ה-sink ביומן בפרויקט Google Cloud היעד מעבירים את רשומות היומן למקום אחר. אובייקט ה-sink‏ _Required מעביר רק רשומות ביומן שתואמות למסנן שלו ומקורן במשאב שבו הוגדר אובייקט ה-sink. לכן, אם רוצים לאחסן עותקים נוספים של רשומות ביומן שמתאימות למסנן של יעד _Required, צריך ליצור יעד מותאם אישית ליומן או לשנות את המסנן של יעד _Default ליומן.

כשיוצרים מאגר נתונים זמני שחוצץ בין מקורות לבין יעדים, מומלץ לבצע את הפעולות הבאות:

  • כדאי לשקול אם משאבי צאצא צריכים בקרה עצמאית על ניתוב רשומות היומן שלהם. אם משאב צאצא צריך שליטה עצמאית ברשומות מסוימות ביומן, צריך לוודא שמאגר היעד שלכם לא מעביר את הרשומות האלה ביומן.

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

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

יירוט של יעד מצטבר ומדדים מבוססי-יומנים

מדדים מבוססי-יומן הם מדדים של Cloud Monitoring שנגזרים מהתוכן של רשומות ביומן. הדרך שבה רשומה ביומן מנותבת קובעת אילו מדדים מבוססי-יומנים הרשומה יכולה להיכלל בהם. מאחר שמאגר נתונים מצטבר שחוצץ משפיע על אופן הניתוב של רשומות ביומן, יצירה של מאגר נתונים מסוג זה עלולה לגרום לשינויים בערכים של מדדים קיימים שמבוססים על יומן.

מידע נוסף מופיע במאמר איך רשומות ביומן הניתוב משפיעות על מדדים שמבוססים על יומנים.

מאגרי נתונים משולבים ו-VPC Service Controls

כשמשתמשים ביעדים מצטברים וב-VPC Service Controls, חלות המגבלות הבאות:

  • מאגרי נתונים מצטברים יכולים לגשת לנתונים מפרויקטים בתוך היקף שירות. כדי להגביל את הגישה של מאגרי נתונים מצטברים לנתונים בתוך גבולות גזרה, מומלץ להשתמש ב-IAM כדי לנהל את הרשאות הגישה לרישום ביומן.

  • שירות VPC Service Controls לא תומך בהוספה של משאבי תיקיות או ארגונים לגבולות גזרה של שירותים. לכן, אי אפשר להשתמש ב-VPC Service Controls כדי להגן על יומנים ברמת התיקייה והארגון, כולל יומנים מצטברים. כדי לנהל הרשאות ל-Logging ברמת התיקייה או הארגון, מומלץ להשתמש ב-IAM.

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

  • כשמציינים מדיניות כניסה או יציאה למתחם שירות, אי אפשר להשתמש ב-ANY_SERVICE_ACCOUNT וב-ANY_USER_ACCOUNT כסוג זהות כשמשתמשים ביעד להעברת יומנים כדי לנתב יומנים למשאבי Cloud Storage. אבל אפשר להשתמש ב-ANY_IDENTITY כסוג הזהות.

המאמרים הבאים