सर्वर साइड टैगिंग के बारे में जानकारी

सर्वर साइड टैगिंग, Google Tag Manager का इस्तेमाल करने का एक नया तरीका है. इसकी मदद से सभी डिवाइसों पर अपने ऐप्लिकेशन का इस्तेमाल किया जा सकता है. सर्वर कंटेनर उसी टैग, ट्रिगर, और वैरिएबल मॉडल का इस्तेमाल करते हैं जिसका इस्तेमाल किया जा रहा है. साथ ही, यह नए टूल भी उपलब्ध कराता है. इनकी मदद से, उपयोगकर्ता गतिविधि को किसी भी जगह मेज़र किया जा सकता है.

सर्वर साइड टैगिंग के बिना एक सामान्य टैगिंग कॉन्फ़िगरेशन, अलग-अलग कलेक्शन सर्वर को मेज़रमेंट डेटा भेजने के लिए, पेज में मौजूद कंटेनर पर निर्भर करता है. पहली इमेज में इसका उदाहरण दिया गया है कि किसी वेब ब्राउज़र में चलने वाला Tag Manager वेब कंटेनर, कई सर्वर को डेटा कैसे भेजता है.

Google Tag Manager के वेब कंटेनर का इस्तेमाल करने वाली साइट का डायग्राम

पहली इमेज: Google Tag Manager के वेब कंटेनर का इस्तेमाल करने वाली साइट का डायग्राम.

इसके उलट, सर्वर कंटेनर उपयोगकर्ता के ब्राउज़र या उसके फ़ोन पर नहीं चलता. इसके बजाय, यह उस सर्वर पर चलता है जिसका कंट्रोल आपके पास है.

सर्वर साइड टैगिंग कंटेनर का इस्तेमाल करके बनाई गई साइट का डायग्राम.

इमेज 2: सर्वर कंटेनर का इस्तेमाल करने वाले टैगिंग कॉन्फ़िगरेशन का उदाहरण.

सर्वर आपके Google Cloud Platform प्रोजेक्ट में या आपकी पसंद के अलग जगह पर काम करता है. सर्वर में डेटा का ऐक्सेस सिर्फ़ आपके पास होता है, जब तक इसे कहीं और भेजने का विकल्प नहीं चुना जाता. आपके पास इस बात का पूरा कंट्रोल होता है कि डेटा को कैसे आकार दिया जाए और उसे सर्वर से कहां रूट किया जाए. टैग, सैंडबॉक्स JavaScript टेक्नोलॉजी का इस्तेमाल करके बनाए जाते हैं. अनुमतियों से आपको यह पता चलता है कि टैग क्या कर सकता है. साथ ही, नीतियों की मदद से कंटेनर के लिए सीमाएं तय की जा सकती हैं.

सर्वर को उपयोगकर्ता के डिवाइस से वेब अनुरोध मिलते हैं और वह उन अनुरोधों को इवेंट में बदल देता है. हर इवेंट को कंटेनर के टैग, ट्रिगर और वैरिएबल से प्रोसेस किया जाता है. किसी सर्वर कंटेनर में टैग, ट्रिगर, और वैरिएबल ठीक उसी तरह काम करते हैं, जिस तरह वे दूसरे तरह के कंटेनर में काम करते हैं: ट्रिगर हर इवेंट की जांच कुछ खास शर्तों को देखने के लिए करते हैं. साथ ही, ज़रूरत पड़ने पर वे टैग फ़ायर करते हैं जो इवेंट डेटा को प्रोसेस करने के लिए भेजते हैं.

यह मॉडल, सर्वर कंटेनर से जुड़े दो ज़रूरी सवालों के बारे में बताता है:

  • उपयोगकर्ता के डिवाइस से सर्वर कंटेनर में मेज़रमेंट डेटा कैसे पहुंचता है?
  • किसी सर्वर कंटेनर को भेजा गया मेज़रमेंट डेटा, इवेंट में कैसे बदलता है?

दोनों सवालों का जवाब, सर्वर कंटेनर में इस्तेमाल करने के लिए एक नई तरह की इकाई है: client.

क्लाइंट के काम करने का तरीका

क्लाइंट, उपयोगकर्ता के डिवाइस पर काम करने वाले सॉफ़्टवेयर और आपके सर्वर कंटेनर के बीच अडैप्टर होते हैं. क्लाइंट को किसी डिवाइस से मेज़रमेंट डेटा मिलता है, वह डेटा को एक या उससे ज़्यादा इवेंट में बदलता है, डेटा को कंटेनर में प्रोसेस करने के लिए रूट करता है, और नतीजों को पैकेज करके, अनुरोध करने वाले को वापस भेजता है.

इसमें बहुत सारी चीज़ें हैं! आइए, हर एक हिस्से को बारी-बारी से देखें. तीसरी इमेज में, उपयोगकर्ता के वेब ब्राउज़र और आपके वेब सर्वर से सर्वर कंटेनर से सर्वर कंटेनर में आने वाला डेटा दिखाया गया है.

सर्वर साइड टैगिंग कंटेनर का इस्तेमाल करके बनाई गई साइट का डायग्राम.

इमेज 3: डेटा की हर स्ट्रीम को एक अलग क्लाइंट मैनेज करता है.

क्लाइंट को डिवाइस से मेज़रमेंट डेटा मिलता है. मान लें कि आपको तीन जगहों पर उपयोगकर्ता गतिविधि को मेज़र करना है: वेबसाइट, फ़ोन ऐप्लिकेशन, और स्मार्ट टोस्टर. आपकी वेबसाइट पर Google Analytics का इस्तेमाल होता है. आपके फ़ोन ऐप्लिकेशन में Firebase Analytics का इस्तेमाल होता है. साथ ही, आपका टोस्टर "Toast measure" नाम के मालिकाना प्रोटोकॉल का इस्तेमाल करता है.

Google Tag Manager की मदद से इन तीन डिवाइसों को इंस्टॉल करने के लिए, आम तौर पर हर प्लैटफ़ॉर्म के लिए एक अलग कंटेनर की ज़रूरत होती है. सर्वर कंटेनर, डिवाइस पर नहीं चलता इसलिए, वही कंटेनर तीनों डिवाइस प्लैटफ़ॉर्म के लिए Analytics इंस्ट्रुमेंटेशन को मैनेज कर सकता है. हालांकि, इसमें कोई समस्या है. ये सभी डिवाइस, एक ही तरह से आपस में कम्यूनिकेट नहीं करते. Google Analytics प्रोटोकॉल और Toastमेज़र प्रोटोकॉल एक जैसे नहीं हैं. ऐसे ही कई और तरीके हैं.

उन तीन कंटेनर के बजाय, आपके सर्वर कंटेनर में तीन क्लाइंट हैं. कंटेनर में आने वाले हर अनुरोध को हर क्लाइंट प्राथमिकता के क्रम में प्रोसेस करेगा, सबसे ज़्यादा प्राथमिकता वाला क्लाइंट पहले ऐसा करेगा. हर क्लाइंट को सबसे पहले यह तय करना होगा कि उसे इस तरह के अनुरोध को प्रोसेस करने का तरीका पता है या नहीं. अगर हो सके, तो क्लाइंट उस अनुरोध पर "दावा" करता है और प्रोसेस के अगले चरण पर जाता है. अनुरोध पर दावा करने की वजह से, बाद के क्लाइंट शुरू नहीं हो पाते. अगर क्लाइंट अनुरोध को प्रोसेस नहीं कर सकता है, तो वह कुछ नहीं करता है. साथ ही, दूसरे क्लाइंट को यह तय करने की अनुमति देता है कि अनुरोध को प्रोसेस करना है या नहीं.

क्लाइंट, अनुरोध के डेटा को एक या उससे ज़्यादा इवेंट में बदलते हैं. Toastmeasure क्लाइंट के किसी अनुरोध पर दावा करने के बाद, उसे अनुरोध को किसी ऐसी चीज़ में बदलना होगा जिसे बाकी कंटेनर समझ सके. यह इवेंट का एक सेट है.

इवेंट ऐसी चीज़ें होती हैं जिन्हें आपको मेज़र करना है. ये कुछ भी हो सकते हैं: start_toasting, finish_toasting या buy_bread. क्लाइंट जो इवेंट जनरेट करता है उनके स्ट्रक्चर के बारे में कुछ सुझाव होते हैं. हालांकि, सिर्फ़ इतना ज़रूरी है कि बाकी कंटेनर उन्हें समझ सके.

क्लाइंट, कंटेनर का इस्तेमाल करते हैं. क्लाइंट ने अनुरोध पर दावा किया है और उसे इवेंट में बदल दिया है. अब समय है टैग, ट्रिगर, और वैरिएबल का. क्लाइंट हर इवेंट को बाकी कंटेनर में भेज देता है, ताकि उसे आगे प्रोसेस किया जा सके.

क्लाइंट नतीजों को पैकेज करते हैं, ताकि उन्हें डिवाइस पर वापस भेजा जा सके. कंटेनर चलने के बाद, टोस्टर को जवाब दें. जवाब कई तरह से हो सकता है. शायद क्लाइंट बस "ठीक है, हो गया" कहता हो. हो सकता है कि कोई एक टैग, अनुरोध को दूसरे कलेक्शन सर्वर पर रीडायरेक्ट करना चाहे. या शायद किसी एक टैग से टोस्टर की लाइटों का रंग बदलने के लिए कहा जाता है. जो भी हो सकता है, यह क्लाइंट का काम होता है कि नतीजों को पैक किया जाए और अनुरोध करने वाले को वापस भेजा जाए.

अच्छी बात यह है कि Tag Manager इस काम को कई तरह से मैनेज करता है. सर्वर कंटेनर में तीन क्लाइंट शामिल होते हैं: Google Analytics 4, Google Analytics: Universal Analytics और मेज़रमेंट प्रोटोकॉल. अपना कंटेनर बनाते ही, ऐप्लिकेशन का इस्तेमाल शुरू करने के लिए, ये क्लाइंट आपको ज़रूरी टूल उपलब्ध कराते हैं.

छोटा उदाहरण

आइए, एक छोटा सा उदाहरण देखते हैं और यह देखते हैं कि इन सभी चीज़ों को एक साथ कैसे फ़िट किया जाता है. इस उदाहरण में, आपको ये चीज़ें बनानी होंगी:

  1. यह एक आसान वेबसाइट है, जो सर्वर कंटेनर को click इवेंट भेजने के लिए, gtag.js का इस्तेमाल करती है.
  2. इवेंट पाने वाला Google Analytics 4 क्लाइंट.
  3. click इवेंट पर सक्रिय होने वाला ट्रिगर.
  4. ऐसा Google Analytics 4 टैग जो इवेंट डेटा को प्रोसेस करने के लिए, Google Analytics को भेजता है.

इस उदाहरण के लिए, हम यह मान लेंगे कि आपने अपना सर्वर कंटेनर पहले ही बना लिया है और डिप्लॉय कर लिया है.

gtag.js कॉन्फ़िगर करना

सबसे पहले, डेटा को अपने सर्वर कंटेनर में भेजने के लिए gtag.js को कॉन्फ़िगर करें. gtag.js के साथ, अपने सर्वर कंटेनर को डेटा भेजने का काम Google Analytics को डेटा भेजने जैसा ही है, जिसमें सिर्फ़ एक बदलाव होता है. नीचे उदाहरण के तौर पर दिए गए पेज की तरह, सर्वर कंटेनर पर ले जाने के लिए, server_container_url कॉन्फ़िगरेशन विकल्प को सेट करें.

<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=TAG_ID"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'TAG_ID', {
    server_container_url: 'https://analytics.example.com',
  });
</script>

TAG_ID को अपने टैग आईडी से बदलें. https://analytics.example.com को अपने सर्वर कंटेनर यूआरएल से बदलें.

इसके बाद, click इवेंट को मैनेज करने के लिए sendEvent() फ़ंक्शन जोड़ें:

<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=TAG_ID"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'TAG_ID', {
    server_container_url: 'https://analytics.example.com',
  });

  function sendEvent() {
    gtag('event', 'click');
  }
</script>

<button onclick="javascript:sendEvent()">Send Event</button>

TAG_ID को अपने टैग आईडी से बदलें. https://analytics.example.com को अपने सर्वर कंटेनर यूआरएल से बदलें.

इस कॉन्फ़िगरेशन में, sendEvent() फ़ंक्शन जैसे इवेंट हैंडलर शामिल करने पर, आपके सर्वर कंटेनर को click इवेंट भेजा जाएगा.

Google Analytics 4 क्लाइंट

सर्वर तक पहुंचने के बाद आपके कंटेनर को इवेंट पाने के लिए क्लाइंट की ज़रूरत होती है. अच्छी बात यह है कि सर्वर कंटेनर में Google Analytics 4 क्लाइंट पहले से इंस्टॉल होता है, इसलिए यह चरण पहले ही पूरा कर लिया जाता है.

क्लिक ट्रिगर

इसके बाद, click इवेंट पर ट्रिगर करने वाला एक ट्रिगर बनाएं. एक ऐसा कस्टम ट्रिगर बनाएं जो तब ट्रिगर होता हो, जब इवेंट का नाम बिल्ट-इन वैरिएबल की वैल्यू "क्लिक" के बराबर हो.

ट्रिगर कॉन्फ़िगरेशन

Google Analytics 4 टैग

आखिर में, ट्रिगर में GA4 टैग जोड़ें. क्लाइंट की तरह ही, सर्वर कंटेनर में GA4 टैग शामिल होता है. बस टैग बनाएं, अपनी सेटिंग कॉन्फ़िगर करें, और अब आपने अपना कंटेनर वायर कर लिया है. GA4 क्लाइंट और GA4 टैग को एक साथ काम करने के लिए डिज़ाइन किया गया है. इसका मतलब है कि आपको बस GA4 टैग बनाना होगा. इसके बाद, क्लाइंट के इवेंट से उसका कॉन्फ़िगरेशन अपने-आप निकल जाएगा.

कंटेनर की झलक देखना

कंटेनर कॉन्फ़िगर हो जाने के बाद, झलक देखें पर क्लिक करें. किसी अलग ब्राउज़र विंडो में अपनी वेबसाइट पर जाएं. आपके सर्वर कंटेनर पर अनुरोध और इवेंट भेजे जाने पर, आपको झलक पेज की बाईं ओर सूची में अनुरोध और इवेंट दिखेंगे.

अपने बदलावों से संतुष्ट होने पर, सर्वर कंटेनर को पब्लिश करें.

पहले पक्ष की सेवा की मदद से, अपने सर्वर को प्रोडक्शन मोड के लिए कॉन्फ़िगर करें

अपने सर्वर कंटेनर में कोई भी प्रोडक्शन ट्रैफ़िक भेजने से पहले, हमारा सुझाव है कि सर्वर को अपने पहले-पक्ष के डोमेन पर इंस्टॉल करें. साथ ही, सर्वर को प्रोडक्शन मोड में अपग्रेड करें.