मॉनिटरिंग एपीआई की डेवलपर गाइड

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

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

टैग की स्थिति

इस उदाहरण में दिखाई गई टैग स्टेटस तकनीक, किसी पेज पर टैग के ट्रिगर होने के स्टेटस का मिलान करने के लिए, addEventCallback का इस्तेमाल करती है. यह इवेंट के लिए सक्रिय किए गए सभी टैग पर लूप करेगा और सफल, विफल रहे, अपवाद छोड़ने वाले या समय खत्म होने वाले टैग की संख्या की गणना करेगा. इसके बाद, इन टोटल को मॉनिटरिंग पिक्सल यूआरएल में क्वेरी पैरामीटर के तौर पर जोड़ा जाता है. मॉनिटरिंग पिक्सल में इससे मिलता-जुलता यूआरएल होगा:

https://www.example.com/monitoring?ctid=GTM-XXXXXX&success=4&failure=1&exception=1&timeout=0

Pixel यूआरएल को सेट अप करने के लिए, उदाहरण के तौर पर दिया गया यह कोड इस्तेमाल किया जा सकता है:

const addEventCallback = require('addEventCallback');
const sendPixel = require('sendPixel');

addEventCallback(function(containerId, eventData) {
  let successCount = 0;
  let failureCount = 0;
  let exceptionCount = 0;
  let timeoutCount = 0;

  const tagData = eventData['tags'];
  const timingData = [];
  for (let i in tagData) {
    let entry  = tagData[i];
    switch (entry.status) {
      case 'success':
        successCount++;
        continue;
      case 'failure':
        failureCount++;
        continue;
      case 'exception':
        exceptionCount++;
        continue;
      case 'timeout':
        timeoutCount++;
        continue;
    }
  }
  let url = 'https://www.example.com/monitoring?ctid=' + containerId +
      '&success=' + successCount +
      '&failure=' + failureCount +
      '&exception=' + exceptionCount +
      '&timeout=' + timeoutCount;
  sendPixel(url);
});
data.gtmOnSuccess();

एक्ज़ीक्यूशन का समय

यह तकनीक addEventCallback का इस्तेमाल करके, आपके टैग के लागू होने के समय का डेटा इकट्ठा करने में आपकी मदद करती है. इस इवेंट के लिए ट्रिगर होने वाले हर टैग के लिए, पिक्सल यूआरएल में एक क्वेरी पैरामीटर जोड़ा जाता है, जिसमें टैग का आईडी और लागू होने का समय शामिल होता है. यह नीचे दिए गए पिक्सल के जैसा एक पिक्सल भेजता है:

https://www.example.com/monitoring?ctid=GTM-XXXXXX&tag12=1200&tag50=400&tag1=6000

Pixel यूआरएल को सेट अप करने के लिए, उदाहरण के तौर पर दिया गया यह कोड इस्तेमाल किया जा सकता है:

const addEventCallback = require('addEventCallback');
const sendPixel = require('sendPixel');

addEventCallback(function(containerId, eventData) {
  let url = 'https://www.example.com/monitoring?ctid=' + containerId;
  const tagData = eventData['tags'];
  const timingData = [];
  for (let i in tagData) {
    let entry = tagData[i];
    timingData.push('&tag' + entry['id'] + '=' + entry['executionTime']);
  }
  url += timingData.join('');
  sendPixel(url);
});
data.gtmOnSuccess();

मेटाडेटा

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

उदाहरण के लिए: नए विज्ञापन कैंपेन के कंटेनर में टैग जोड़ा गया है. कंटेनर में कई मौजूदा टैग हैं, लेकिन आपकी दिलचस्पी सिर्फ़ इस नए टैग पर नज़र रखने में है.

इवेंट कॉलबैक से इस टैग की पहचान करने के लिए, टैग में मेटाडेटा जोड़ें:

  1. टैग की परिभाषा में, बेहतर सेटिंग > टैग का अतिरिक्त मेटाडेटा पर क्लिक करें.
  2. टैग का नाम शामिल करें पर क्लिक करें, ताकि उसकी जांच की जा सके.
  3. टैग के नाम की कुंजी में, कोई वैल्यू डालें. इस उदाहरण में, वैल्यू के तौर पर "नाम" का इस्तेमाल किया गया है. इससे इवेंट डेटा में टैग का नाम वही होगा जो भेजा जाता है.
  4. +मेटाडेटा जोड़ें पर क्लिक करें और कुंजी और वैल्यू की जोड़ी डालें. इस उदाहरण में, "ग्रुप" नाम की कुंजी और "कैंपेन 2019" की वैल्यू का इस्तेमाल किया गया है.
  5. अपनी पसंद के मुताबिक, कुंजी/वैल्यू पेयर की अतिरिक्त पंक्तियां जोड़ने के लिए, +मेटाडेटा जोड़ें का इस्तेमाल करें.

Tag Manager के यूज़र इंटरफ़ेस का स्क्रीनशॉट, जो टैग के अतिरिक्त मेटाडेटा वाले सेक्शन की जगह को दिखाता है

कस्टम टेंप्लेट में, डेवलपर मेटाडेटा में सेट की गई वैल्यू की जांच करके इस टैग की पहचान कर सकता है:

const addEventCallback = require('addEventCallback');
const sendPixel = require('sendPixel');

addEventCallback(function(containerId, eventData) {
  let url = 'https://www.example.com/monitoring/campaignPixel?ctid=' + containerId;
  const tagData = eventData['tags'];
  for (let i in tagData) {
    let entry = tagData[i];
    if (entry['name'] === 'Conversion Pixel 2019') {
      url += '&status=' + entry['status'];
      break;
    }
  }
  sendPixel(url);
});
data.gtmOnSuccess();

इससे नतीजे के तौर पर नीचे दिया गया पिक्सल यूआरएल मिलता है:

https://www.example.com/monitoring/campaignPixel?ctid=GTM-XXXXXX&status=success

अगर आप चाहें, तो "कैंपेन 2019" ग्रुप के सभी टैग पर नज़र रखी जा सकती है:

const addEventCallback = require('addEventCallback');
const encode = require('encodeUriComponent');
const sendPixel = require('sendPixel');

addEventCallback(function(containerId, eventData) {
  let url = 'https://www.example.com/monitoring/campaign2019?ctid=' + containerId;
  const tagData = eventData['tags'];
  for (let i in tagData) {
    let entry = tagData[i];
    if (entry['group'] === 'Campaign 2019') {
      url += '&' + encode(entry['name']) + '=' + entry['status'];
      break;
    }
  }
  sendPixel(url);
});
data.gtmOnSuccess();

इससे नीचे दी गई चीज़ों से मिलता-जुलता मॉनिटरिंग पिक्सल बन जाएगा:

https://www.example.com/monitoring/campaign2019?ctid=GTM-XXXXXX&Conversion%20Pixel%202019=failure