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

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

מידע על כיורים נצברים

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

סוגים של כיורים נצברים

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

יירוט של כיור מצטבר

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

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

כיור נתונים נצבר שלא מיירט

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

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

דוגמאות לניתוב

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

דוגמה: אין כיורים נצברים

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

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

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

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

  2. הנתב של היומנים שולח את הרשומה ביומן ל-sink ביומן בפרויקט שבו נוצרה הרשומה.

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

דוגמה: קיים כיור מצטבר ליירוט

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

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

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

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

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

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

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

כיורים מיירטים

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

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

יעדים שלא מיירטים

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

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

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

פרויקטGoogle Cloud

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

sink ביומן שנוצרו על ידי המערכת בפרויקט היעד לא כוללים רשומות ביומן שמנותבות לקטגוריה ביומן _Required בפרויקט המקור. לדוגמה, אם אתם מנתבים את יומני Admin Activity לפרויקט אחר, גם בכיור היומנים _Required וגם בכיור היומנים _Default בפרויקט היעד לא ייכללו רשומות היומן האלה. כדי לאחסן את רשומות היומן האלה, בפרויקט היעד צריך לעדכן את _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 . ביעד הזה, כיורי היומנים בפרויקט היעדGoogle Cloud מנתבים מחדש את רשומות היומן. אובייקט ה-sink‏ _Required מעביר רק רשומות ביומן שתואמות למסנן שלו ומקורן במשאב שבו מוגדר אובייקט ה-sink. לכן, אם רוצים לאחסן עותקים נוספים של רשומות ביומן שמתאימות למסנן של יעד _Required, צריך ליצור יעד מותאם אישית ליומן או לשנות את המסנן של יעד _Default ליומן.

כשיוצרים כיור ליירוט, מומלץ לבצע את הפעולות הבאות:

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

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

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

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

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

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

כיורים נצברים ו-VPC Service Controls

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

  • גישה ליומני פרויקטים בתוך גבולות גזרה לשירות: אובייקטים מסוג sink עם צבירה יכולים לגשת לנתוני יומנים מפרויקטים בתוך גבולות גזרה לשירות. כדי להגביל את הגישה של מאגרי נתונים מצטברים לנתונים בתוך היקף, צריך להשתמש בניהול זהויות והרשאות גישה (IAM) כדי לנהל את ההרשאות של Cloud Logging.

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

    כדי לנהל את ההרשאות של Logging ברמת התיקייה או הארגון, משתמשים ב-IAM.

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

  • הגבלות על סוגי זהויות בכללי תעבורת נתונים נכנסת ויוצאת: כשכיור יומנים נצברים מנתב יומנים למשאב Cloud Storage שנמצא בהיקף של VPC Service Controls, אי אפשר להשתמש ב-ANY_SERVICE_ACCOUNT או ב-ANY_USER_ACCOUNT כסוג הזהות בכלל תעבורת הנתונים הנכנסת או היוצאת. במקום זאת, צריך להשתמש ב-ANY_IDENTITY כסוג הזהות.

    לא צריך להגדיר כלל כניסה לכיורים לא נצברים.

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