הגדרת מצב של אינטראקציה ישירה (First-Party)

המסמך הזה מיועד למשתמשים שרוצים לפרוס את Google Tag במצב של אינטראקציה ישירה (First-Party). להגדרת התג העמידות ביותר מומלץ להשתמש במצב אינטראקציה ישירה (First-Party).

סקירה

במצב צד ראשון אפשר לפרוס את Google Tag באמצעות תשתית משלכם של צד ראשון, שמתארחת בדומיין של האתר (למשל, example.com). התשתית הזו נמצאת בין האתר שלכם לשירותים של Google, כך שתשתית הצד הראשון היא הטכנולוגיה היחידה שמאפשרת לכם לתקשר ישירות עם המשתמשים באתר. מצב צד ראשון מוסיף שכבה של אבטחת נתונים ומאפשר אמצעי בקרה נוספים על פרטיות הנתונים, כמו ערפול קוד (obfuscation) מלא של כתובות IP, בלי לפגוע במדידה. ההגדרה שמופיעה במאמרי העזרה הזו תעזור לכם לשחזר X% יותר אותות מדידה באתר. אפשר להגדיר אותו באמצעות הרשת הקיימת להעברת תוכן (CDN), מאזן העומסים או שרת האינטרנט, כדי להפעיל מצב של צד ראשון.

בהגדרות רגילות של Google Tag, דף האינטרנט מבקש לקבל Google Tag מדומיין של Google (למשל, www.googletagmanager.com). כשהתג מופעל, הוא שולח בקשות מדידה ישירות למוצר של Google. במצב של אינטראקציה ישירה (First-Party), האתר טוען את Google Tag מהדומיין של הצד הראשון (למשל, example.com). כשתג מופעל, הוא שולח בקשות מדידה לדומיין של הצד הראשון שלכם, ודרכו הן מועברות למוצר הרלוונטי של Google.

המעבר מהגדרה רגילה של Google Tag להגדרה של מצב אינטראקציה ישירה (First-Party) יגרום לשמירה על המשכיות המדידה המלאה.

הדיאגרמה הזו מייצגת את זרימת המידע במצב של אינטראקציה ישירה (First-Party):

ארכיטקטורה של מצב צד ראשון

לפני שמתחילים

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

1. בחירת נתיב הצגת התגים

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

בוחרים את כל הנתיב הרצוי להגדרת מצב של אינטראקציה ישירה (First-Party). דוגמאות לנתיבים שייתכן שתרצו להשתמש בהם: /metrics, /securemetric, /analytics או מחרוזת אלפאנומרית אקראית שלא משתמשים בה כבר באתר.

כדי לאכלס את הדוגמאות בכל המסמך צריך למלא את הפרטים הבאים.

Your domain: example.com
Google tag ID: GTM-123456
Tag serving path: /metrics

2. תנועה במסלול

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

Google Cloud

צריך להגדיר קצה עורפי חדש שבודק את המיקום הגיאוגרפי המשוער של המבקר באתר, וליצור כללי ניתוב במאזן עומסים של אפליקציות חיצוניות (External Application Load Balancer).

יצירת הקצה העורפי החדש

  1. פתיחת מאזן עומסים ב-GCP

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

  3. מגדירים את השירות לקצה העורפי החדש עם פרטי המיקום הגיאוגרפי:

    • צריך לציין שם, למשל measurement-be-svc.
    • מגדירים את סוג הקצה העורפי כקבוצת נקודות קצה של רשת אינטרנט.
    • מגדירים את Protocol כ-HTTPS ומשאירים את Timeout בתור הערך שהוזן מראש.
    • בקטע קצוות עורפיים לוחצים על התפריט הנפתח קבוצת נקודות קצה של רשת אינטרנט ויוצרים קבוצה חדשה של נקודות קצה לרשת אינטרנט:
      • מגדירים את Network endpoint type type ל-Internet NEG (Global, Regional).
      • מגדירים את היקף כגלובלי.
      • מגדירים באפשרות הוספה באמצעות לאפשרות שם דומיין ויציאה המוגדרים במלואם.
      • מגדירים את שם דומיין שמוגדר במלואו ל-GTM-123456.fps.goog.
      • לוחצים על יצירה כדי ליצור את נקודת הקצה.
      • סוגרים את הכרטיסייה Network endpoint group כדי לחזור לכרטיסייה New Backend service.
    • מחפשים את השם של קבוצת נקודות הקצה של הרשת החדשה ובוחרים בה.
    • פותחים את הקטע Advanced configuration (הגדרות מתקדמות). מוסיפים את הכותרות הבאות של בקשות בהתאמה אישית.
      שם הכותרת ערך הכותרת
      Host GTM-123456.fps.goog
      X-Gclb-Country {client_region}
      X-Gclb-Region {client_region_subdivision}
    • בודקים את שאר ההגדרות. השילוב הזה לא מחייב Cloud CDN ו-Cloud Armor, כך שאפשר להשבית את שניהם בבטחה.
    • שמירת השירות החדש לקצה העורפי.

הגדרת כללי ניתוב

  1. במאזן העומסים, פותחים את הקטע כללי ניתוב.

  2. מוסיפים את כללי המארח והנתיב הבאים:

    Host נתיב קצה עורפי
    * /metrics/* measurement-be-svc

  3. לעדכן את הגדרת מאזן העומסים.

  4. בדפדפן, מאמתים את ההגדרה על ידי מעבר אל: https://example.com/metrics/healthy. הדף צריך לכלול את הטקסט ok. כדי לוודא שהמידע הגיאוגרפי נכלל, מנווטים אל: https://example.com/metrics/?validate_geo=healthy. הדף צריך לכלול את הטקסט ok.

Cloudflare

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

יצירת רשומת CNAME

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

CNAME subdomain: fps
  1. בכרטיסייה DNS, פותחים את הקטע רשומות.
  2. מוסיפים רשומה חדשה עם ההגדרות הבאות:
    • מגדירים את Type (סוג) כ-CNAME.
    • מגדירים את Name כ-fps.
    • מגדירים את Target (יעד) ל-GTM-123456.fps.goog.
  3. שומרים את רשומת ה-CNAME.

יצירת כלל המקור

  1. בכרטיסייה 'כללים', פותחים את כללי המקור ויוצרים כלל.
  2. נותנים שם לכלל, למשל Route measurement.
  3. מתאימים בקשות נכנסות על סמך ביטוי סינון בהתאמה אישית ולוחצים על עריכת ביטוי.
  4. מדביקים את הביטוי הבא ב-builder: (http.host eq "example.com" and starts_with(http.request.uri.path, "/metrics")).
  5. מעדכנים את כותרת המארח לשכתוב אל... GTM-123456.fps.goog.
  6. מעדכנים את רשומת ה-DNS לאפשרות שינוי מברירת המחדל... fps.example.com.
  7. שומרים את כלל המקור.
  8. אם יש כללי מקור אחרים, מגדילים את המיקום של הכלל החדש שנוצר כדי שהוא יפעל אחרי נתיבים אחרים עם תווים כלליים לחיפוש.
  9. בדפדפן, מאמתים את ההגדרה על ידי מעבר אל: https://example.com/metrics/healthy. בדף צריך להופיע ok.

כלול מידע של מיקום גיאוגרפי

  1. בכרטיסייה 'כללים', פותחים את Transform Rules (כללים לטרנספורמציות).
  2. יוצרים כלל לשינוי כותרת הבקשה.
  3. מחילים את הכלל על כל הבקשות הנכנסות.
  4. משנים את כותרת הבקשה באמצעות ההגדרות הבאות:
    • מגדירים את האופרטור כ-Set dynamic.
    • מגדירים את שם הכותרת ל-X-CfIpCountryRegion.
    • מגדירים את Value (ערך) ל-ip.src.subdivision_1_iso_code.
  5. פורסים את כלל הטרנספורמציה.
  6. מחכים כמה דקות עד שהכלל יופעל. בדפדפן, מאמתים את ההגדרה על ידי מעבר אל: https://example.com/metrics/?validate_geo=healthy. בדף צריך להופיע ok.

(אופציונלי) הסרת כותרות IP של מבקרים

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

אחר

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

  1. צריך להוסיף מקור או קצה עורפי שמפנה אל GTM-123456.fps.goog.
  2. משנים את הכותרת מארח כך שתהיה שווה ל-GTM-123456.fps.goog. אפשר להעביר את כל קובצי ה-cookie ומחרוזות השאילתה.
  3. מוסיפים כלל נתיב של /metrics/* כדי לנתב תעבורת נתונים למצב של אינטראקציה ישירה (First-Party).
  4. מגדירים את הנתיב השמור כך שיהיה גבוה יותר מכלל ברירת המחדל.
  5. בדפדפן, מאמתים את ההגדרה על ידי מעבר אל: https://example.com/metrics/healthy. בדף צריך להופיע ok.

שלב 3: מעדכנים את הסקריפטים באתר כך שישתמשו בנתיב המדידה

החלפת הסקריפטים בכל דף באתר באחד מהסקריפטים הבאים:

gtag.js

בחלק העליון של הקטע <head>, מאתרים את שתי השורות בסקריפט עם מזהה Google Tag:

<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=GTM-123456"></script>

ומחליפים אותם בנתיב המדידה:

<!-- Google tag (gtag.js) -->
<script async src="/metrics/"></script>

gtm.js

בחלק העליון של הקטע <head>, מחליפים את קטע הקוד של Tag Manager בערך הבא:

<!-- Google Tag Manager -->
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'/metrics/?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','');</script>
<!-- End Google Tag Manager -->

שלב 4: בודקים את הגדרת המדידה

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

  1. נכנסים ל-Tag Assistant כדי לראות תצוגה מקדימה של הקונטיינר. עוברים באתר כדי להפעיל תגים.

  2. בכרטיסייה Summary (סיכום) > Output (פלט) > היטים שנשלחו, מוודאים שההיטים מנותבים אל /metrics.

    צילום מסך לאימות ההגדרה

שלב 5: משוב

אתם יכולים לשלוח משוב על מצב אינטראקציה ישירה (First-Party) באמצעות טופס המשוב.