בדף הזה מוסבר איך להשתמש באירועים מורחבים (XEvents) במופעים שלכם.
ב-Cloud SQL ל-SQL Server אפשר להשתמש ב-XEvents כדי לעקוב אחרי הביצועים של מסד הנתונים, לזהות בעיות ולפתור אותן. כדי לעשות את זה, יוצרים סשנים של XEvent וקוראים קובצי פלט של XEvent. אפשר לקרוא את קובצי הפלט של XEvent במופע או להוריד את קובצי XEvent מקטגוריה של Cloud Storage.
לפני שמתחילים
אם רוצים להעלות את קובצי ה-XEvent לקטגוריה של Cloud Storage, צריך ליצור קטגוריה בחשבון Google Cloud .
שיטות מומלצות
- כדי להימנע מהעברת קבצים גדולים בין אזורים, מומלץ לבצע אחת מהפעולות הבאות:
- יצירת קטגוריות של Cloud Storage שפועלות במספר אזורים
- הגדרת קטגוריית היעד של Cloud Storage באותו אזור שבו נמצא המופע
- לפני שמשתמשים ב-XEvents, צריך להפעיל הגדלות אוטומטיות של נפח האחסון. קבצי הפלט של XEvent עשויים לדרוש נפח דיסק משמעותי, בהתאם לגודל הכולל שלהם ולמרווחי השמירה.
- כדי להימנע משמירה של יותר מדי קובצי XEvent למשך זמן רב, צריך להגדיר מדיניות שמירת נתונים לקטגוריה של Cloud Storage.
- אם אתם יוצרים סשן XEvent באמצעות ממשק המשתמש של SSMS, אבל חלק מהתיבות להזנת ערכים לא מופיעות, אתם צריכים לשנות את הגודל של החלון Create XEvent Session.
איך יוצרים סשנים של XEvent
התכונה XEvents מופעלת במופעים שלכם באופן אוטומטי.
משתמשים בפקודה CREATE EVENT SESSION כדי להגדיר סשנים חדשים של XEvent. אפשר גם להשתמש בממשק המשתמש של SQL Server Management Studio (SSMS) כדי ליצור סשנים של XEvent.
ב-Cloud SQL, הפרמטרים הבאים נאכפים בכל סשן XEvent:
| פרמטר | תיאור | ערכים מותרים |
FILENAME
|
מציינת את שם הקובץ והנתיב לאחסון נתוני הפעלה של XEvents. | כל נתיב שמתחיל ב-/var/opt/mssql/xevents/
|
MAX_FILE_SIZE
|
מציינים את הגודל המקסימלי של כל קובץ פלט לפני שנוצר קובץ חדש. | מינימום 10MB
מקסימום 1GB |
MAX_MEMORY
|
מציין את כמות הזיכרון המקסימלית להקצאה לזיכרון הזמני של האירועים במהלך הסשן. | מינימום 4MB
מקסימום 8MB |
MAX_DISPATCH_LATENCY
|
מציין את הזמן המקסימלי (בשניות) שאירועים יכולים להישאר בתור לשליחת אירועים לפני שהם נשלחים ליעד. | מינימום שנייה אחת
מקסימום 30 שניות |
MAX_EVENT_SIZE
|
הגודל המקסימלי של כל אירוע, בבייטים. | מינימום 4MB
מקסימום 8MB |
פרמטרים להגדרת סשן של XEvent
אפשר להגדיר סשנים של XEvent באמצעות הפרמטרים הבאים כדגלים מותאמים אישית:
| פרמטר | תיאור |
cloud sql xe bucket name
|
מציינים את הקטגוריה של Cloud Storage שאליה רוצים להעלות את הפלט של סשן XEvent. אם לא מציינים את זה, Cloud SQL לא מעלה את נתוני הפלט של סשן XEvent ל-Cloud Storage. |
cloud sql xe output total disk size (mb)
|
מציינים את נפח האחסון בדיסק שיוקצה לפלט של כל סשני XEvent. אם לא מציינים את הערך הזה, Cloud SQL משתמש במרחב דיסק של 512MB כברירת מחדל. אם קובצי הפלט של XEvent צורכים יותר מקום בדיסק מהערך של cloud sql xe output total disk size (mb), Cloud SQL מסיר את הקבצים האלה מהדיסק.
|
cloud sql xe file retention (mins)
|
מציינים את זמן השמירה במופע בדקות עבור קבצים שנוצרו על ידי יעדי הקבצים של סשנים של XEvent. אם לא מציינים ערך, Cloud SQL משתמש בערך ברירת המחדל של 7 ימים. |
cloud sql xe upload interval (mins)
|
מציינים את מרווח הזמן להעלאה של קובצי XEvent ל-Cloud Storage. אם לא מציינים ערך, Cloud SQL משתמש בערך ברירת המחדל של 10 דקות. |
מידע נוסף על הגדרת הדגלים האלה זמין במאמר הגדרת דגלים של מסד נתונים.
איך קוראים קובצי פלט של סשן XEvent
אפשר לקרוא קובצי פלט של סשן XEvent ממופע Cloud SQL או מקטגוריה של Cloud Storage.
קריאת קובצי פלט של XEvent ממופע
כדי לאחזר את הנתונים מקובץ XEvent שנוצר על ידי סשן XEvent, משתמשים בפונקציה sys.fn_xe_file_target_read_file.
הנה דוגמה:
SELECT * FROM sys.fn_xe_file_target_read_file('/var/opt/mssql/xevents/filename*, NULL, NULL, NULL);
קריאת קובצי פלט של XEvent מקטגוריה
כדי לקרוא קובצי פלט של XEvent מקטגוריה ב-Cloud Storage, צריך להוריד את הקבצים מהקטגוריה למכונה של SQL Server. אפשר להוריד מאחד מהמקרים הבאים:
- מכונת Windows ב-Compute Engine
- מכונת Linux ב-Compute Engine
- סוג נוסף של מופע שבו פועל SQL Server
לאחר מכן, מעבירים את קובצי הפלט של XEvent מהמאגר למיקום שאפשר לגשת אליו מהמופע הזה, כמו הדיסק המקומי שלו. לאחר מכן, כדי להחזיר מידע מקובץ הפלט של XEvent, מריצים את הפונקציה sys.fn_xe_file_target_read_file עם חשבון שיש לו הרשאה VIEW SERVER STATE בשרת. מידע נוסף על הרשאות זמין במאמר בנושא הרשאות.
איך נותנים הרשאות להעלאת קבצים לקטגוריה ב-Cloud Storage
כדי להעניק הרשאות להעלאת קובצי XEvent לקטגוריה של Cloud Storage, מבצעים את השלבים הבאים:
המסוף
- במסוף Google Cloud , נכנסים לדף Buckets של Cloud Storage.
ברשימת הקטגוריות, לוחצים על שם הקטגוריה שאליה רוצים להעלות את קובצי ה-XEvent.
בדף Bucket details, לוחצים על הכרטיסייה Permissions.
בכרטיסייה View by principals (תצוגה לפי חשבונות משתמשים), לוחצים על Grant Access (מתן גישה).
בקטע Add principals (הוספת חשבונות משתמשים), בשדה New principal (חשבון משתמש חדש), מזינים את חשבון השירות של מופע Cloud SQL שבו רוצים להשתמש.
בקטע Assign roles, בשדה Select a role, מזינים את התפקיד Storage Object User (
roles/storage.objectUser). מידע נוסף על התפקיד זמין במאמר התפקידים הנדרשים ב-Cloud Storage.
מדדי מעקב
אפשר לעקוב אחרי הפעולות הבאות שקשורות ל-xevent כחלק ממדדי Cloud SQL, שזמינים דרך Metrics Explorer:
- database/sqlserver/xevents_upload_count: מציין את המספר הכולל של ניסיונות העלאה מוצלחים וניסיונות העלאה שנכשלו של קובצי xevent. כדאי לבדוק את המדד הזה כדי לראות אם ההעלאות בוצעו בהצלחה.
- database/sqlserver/xevents_size.: מציין את נפח הדיסק שבו נעשה שימוש על ידי קובצי xevent שמאוחסנים במופע, בבייטים.
מעקב אחרי סשנים של XEvent
אפשר לעקוב אחר פעילויות שקשורות להפעלת XEvent דרך הקובץ xevents.log עבור הפעולות הבאות:
- קבצי הפלט של XEvent שהוסרו מהדיסק, שלא הועלו ל-Cloud Storage ותפסו מקום בדיסק מעל הערך שמשויך ל-
cloud sql xe output total disk size (mb). - קבצי הפלט של XEvent הוסרו מהדיסק, הם לא הועלו ל-Cloud Storage והם ישנים יותר מהערך שמשויך ל-
cloud sql xe file retention.
שיקולים לגבי עותקים לקריאה ומאגרי קריאה
בקטע הזה מופיע מידע על סשנים של XEvent עבור עותקים לקריאה ומאגרי קריאה.
למאגרי קריאה ולעותקי קריאה חדשים
- כל פרמטרי ההגדרה של סשן XEvent שמועברים דרך דגלי מסד הנתונים במופע המקורי זמינים בעותק לקריאה שנוצר לאחרונה.
- כל סשנים של XEvent שקיימים במופע המקורי כשנוצרים העתקים לקריאה, זמינים בהעתק לקריאה. שימו לב שצריך להפעיל ידנית סשנים של XEvent בעותק לקריאה, אלא אם הם מוגדרים להפעלה אוטומטית. מידע נוסף זמין במאמר איך יוצרים סשנים של XEvent.
- אם משכפלים מכונה ראשית, כל הדגלים של מסד הנתונים שמופיעים במכונה הראשית מועברים למכונה המשוכפלת. בנוסף, צריך לתת הרשאות לחשבון השירות של המופע המשוכפל כדי לגשת שוב לקטגוריה של Cloud Storage.
- העתק לקריאה או מאגר לקריאה מעלים קובץ פלט ל-Cloud Storage.
- במקרה של העתקי קריאה, שם הקובץ מפנה להעתק הקריאה.
- במאגרי קריאה, שם הקובץ מתייחס לצומת הספציפי של מאגר הקריאה.
למאגרי קריאה ולעותקי קריאה קיימים
- פרמטרים של הגדרת סשן XEvent שעוברים דרך דגלים של מסד נתונים למופע המקורי לא מועברים לרפליקות לקריאה.
- סשנים של XEvent שנוצרו במופע המקורי לא מועברים לרפליקות לקריאה.