डेवलपर गाइड

इस दस्तावेज़ में, Google Analytics का डेटा पाने के लिए, रीयल टाइम रिपोर्टिंग एपीआई का इस्तेमाल करने का तरीका बताया गया है.

शुरुआती जानकारी

Real-Time Reporting API की मदद से, अपनी प्रॉपर्टी पर अभी हो रही गतिविधि की शिकायत की जा सकती है. रीयल-टाइम डेटा ऐक्सेस करने के लिए, आपको एक ऐसी क्वेरी बनानी होगी जो व्यू (प्रोफ़ाइल) और कम से कम एक मेट्रिक के बारे में बताती हो. अपनी क्वेरी को बेहतर बनाने के लिए, डाइमेंशन और फ़िल्टर जैसे दूसरे क्वेरी पैरामीटर भी दिए जा सकते हैं. यह क्वेरी, Real-Time Reporting API को भेजी जाती है. यह डेटा को टेबल के तौर पर दिखाती है.

अगर आपने इस एपीआई का इस्तेमाल पहले कभी नहीं किया है, तो रीयल टाइम रिपोर्टिंग एपीआई और इससे मिलने वाले डेटा के बारे में जानने के लिए, रीयल टाइम रिपोर्टिंग एपीआई की खास जानकारी पढ़ें.

पहले से आवश्यक

Google Analytics का डेटा पाने के लिए, Real Time Reporting API का इस्तेमाल करने से पहले:

  • एपीआई के साथ काम करने वाली प्रोग्रामिंग भाषा की खास क्लाइंट लाइब्रेरी की पूरी सूची देखने के लिए, क्लाइंट लाइब्रेरी पेज पढ़ें.
  • Google Analytics का डेटा पाने के लिए, सिर्फ़ एपीआई का इस्तेमाल किए बिना, (क्लाइंट लाइब्रेरी का इस्तेमाल किए बिना) इस्तेमाल करने का तरीका जानने के लिए, रेफ़रंस गाइड पढ़ें.

हर क्लाइंट लाइब्रेरी, रीयल-टाइम रिपोर्टिंग एपीआई का सभी डेटा ऐक्सेस करने के लिए, आंकड़ों की सेवा देने वाला एक ऑब्जेक्ट उपलब्ध कराती है. सेवा ऑब्जेक्ट बनाने के लिए:

  1. Google API (एपीआई) कंसोल में अपना ऐप्लिकेशन रजिस्टर करें.
  2. Google Analytics डेटा को ऐक्सेस करने की अनुमति दें.
  3. Analytics सेवा ऑब्जेक्ट बनाएं.

अगर आपने इन चरणों को पूरा नहीं किया है, तो कृपया Hello Google Analytics API का ट्यूटोरियल पढ़ें. इसमें, आपको Google Analytics API ऐप्लिकेशन बनाने के शुरुआती चरणों के बारे में बताया गया है. इसके बाद, आपको Google Analytics का डेटा पाने के लिए, एपीआई इस्तेमाल करने का तरीका पता चल जाएगा.

Real-Time Reporting API का इस्तेमाल करना

Real Time Reporting API का इस्तेमाल करने के लिए, एक ऐप्लिकेशन:

  1. रीयल टाइम रिपोर्टिंग एपीआई पर क्वेरी करता है.
  2. एपीआई से मिले रिस्पॉन्स को मैनेज करता है.

रीयल-टाइम रिपोर्टिंग एपीआई की क्वेरी करना

Analytics सेवा ऑब्जेक्ट, रीयल-टाइम रिपोर्टिंग एपीआई क्वेरी बनाने का तरीका उपलब्ध कराता है. क्वेरी पैरामीटर और एपीआई के लिए उपलब्ध डेटा की जानकारी के लिए, इसे पढ़ें:

क्वेरी तय करने के बाद, इसके execute तरीके को कॉल करें, ताकि Google Analytics के सर्वर पर क्वेरी भेजी जा सके.

एपीआई से मिले रिस्पॉन्स को मैनेज करना

अगर Real-Time Reporting API की क्वेरी पूरी हो जाती है, तो एपीआई, अनुरोध किया गया डेटा, रीयल-टाइम डेटा संसाधन के तौर पर दिखाता है. एपीआई से मिले रिस्पॉन्स के स्ट्रक्चर और फ़ॉर्मैट के बारे में जानने के लिए, रीयल-टाइम रिपोर्टिंग एपीआई का रेफ़रंस देखें.

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

कोड के उदाहरण

रीयल टाइम डेटा: पाएं पेज पर मौजूद उदाहरण सेक्शन में, अलग-अलग प्रोग्रामिंग भाषाओं के सैंपल कोड दिए गए हैं. इनमें रीयल टाइम रिपोर्टिंग एपीआई की क्वेरी करने और एपीआई से मिले रिस्पॉन्स को मैनेज करने के लिए, कोड दिए गए हैं.

क्वेरी की सीमाएं

रीयल टाइम एपीआई क्वेरी पर लागू पाबंदियां यहां दी गई हैं:

  • अगर यहां दिए गए डाइमेंशन फ़िल्टर वाली क्वेरी में rt:activeUsers मेट्रिक शामिल है, तो सिर्फ़ AND ऑपरेटर और बराबर संख्या में मैच टाइप (==) इस्तेमाल किए जा सकते हैं.
    • rt:goalId
    • rt:eventAction
    • rt:eventCategory
    • rt:eventLabel

    rt:activeUsers मेट्रिक से, सिर्फ़ उन उपयोगकर्ताओं का डेटा इकट्ठा किया जाता है जो फ़िलहाल साइट पर सक्रिय हैं. इसलिए, rt:activeUsers के साथ rt:minutesAgo का इस्तेमाल न करें. इसका मतलब है कि rt:activeUsers का मतलब है कि rt:minutesAgo का मान 0 है.

  • मेट्रिक फ़िल्टर के लिए कोई सहायता उपलब्ध नहीं है.
  • fields पैरामीटर के लिए कोई सहायता उपलब्ध नहीं है.

कोटा मैनेजमेंट

जैसा कि सीमाएं और कोटा में बताया गया है, Real Time Reporting API के लिए हर दिन के कोटा होते हैं, जिन्हें अन्य Google Analytics API के साथ शेयर किया जाता है. अगर रीयल-टाइम रिपोर्टिंग एपीआई को थोड़े-थोड़े अंतराल पर पोल किया जा रहा है, तो रोज़ की तय सीमा बहुत जल्दी पूरी हो जाती है. ऐसा होने पर, अन्य Google Analytics API के अनुरोध भी तब तक काम करना बंद कर देते हैं, जब तक कोटा रीफ़्रेश नहीं किया जाता.

इसे लागू करने के कुछ ऐसे उदाहरण हैं जिनमें कोटा बहुत तेज़ी से खर्च हो सकता है:

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

कोटा का इस्तेमाल कम करने और उसे बेहतर तरीके से मैनेज करने के लिए:

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

उदाहरण: रीफ़्रेश इंटरवल का हिसाब लगाना

अगर आपको रीयल-टाइम डेटा के लिए बार-बार अनुरोध करना है, तो आपको अपने इस्तेमाल के हिसाब से रीफ़्रेश का एक सही इंटरवल चुनना चाहिए.

उदाहरण के लिए, किसी एक Google Analytics व्यू (प्रोफ़ाइल) के लिए, एक दिन में ज़्यादा से ज़्यादा 10,000 अनुरोध किए जा सकते हैं. अगर आपको लगता है कि किसी एक व्यू (प्रोफ़ाइल) के लिए, कोर रिपोर्टिंग एपीआई से एक दिन में 6,000 क्वेरी की जा सकती हैं, तो आपके पास उस व्यू (प्रोफ़ाइल) के लिए, 4,000 अनुरोधों का कोटा बचा रहेगा.

मान लें कि आपने रीयल टाइम रिपोर्टिंग एपीआई का इस्तेमाल करके तीन रीयल-टाइम डैशबोर्ड लागू करने का फ़ैसला किया है. ये डैशबोर्ड एक ही व्यू (प्रोफ़ाइल) से, रीयल-टाइम डेटा के लिए पूरे दिन क्वेरी करते हैं. हर डैशबोर्ड पर, हर दिन करीब 1,333 क्वेरी (4,000 क्वेरी / 3 डैशबोर्ड) बनाई जा सकती हैं. एक दिन में 86,400 सेकंड होते हैं. इसलिए, हर डैशबोर्ड के लिए रीफ़्रेश इंटरवल 65 सेकंड (86,400 / 1,333) से ज़्यादा होना चाहिए, ताकि व्यू (प्रोफ़ाइल) के लिए रोज़ के अनुरोधों की कुल संख्या 4,000 से कम हो.