Firebase is back at Google I/O on May 10! Register now

क्लाउड लॉगिंग के साथ अपनी साइट के वेब अनुरोध लॉग देखें, खोजें और फ़िल्टर करें

संग्रह की मदद से व्यवस्थित रहें अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.

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

यहां कुछ चीजें हैं जो आप क्लाउड लॉगिंग लॉग के साथ करते हैं। विवरण जानने के लिए इस पृष्ठ के प्रत्येक अनुभाग पर जाएँ।

यदि आपके प्रोजेक्ट में एकाधिक होस्टिंग साइट हैं, तो आप चुन सकते हैं कि आपकी कौन सी होस्टिंग साइट लॉग निर्यात करेगी। फिर आप होस्टिंग साइट और यहां तक ​​कि डोमेन द्वारा अपने लॉग डेटा को फ़िल्टर और देख सकते हैं। लॉग निर्यात करने के लिए विशिष्ट होस्टिंग साइटों का चयन करके, आप अपने प्रोजेक्ट के लिए संसाधित डेटा की मात्रा को भी नियंत्रित कर सकते हैं।

  1. Firebase कंसोल में क्लाउड लॉगिंग इंटीग्रेशन कार्ड में लिंक पर क्लिक करें।

    क्लाउड लॉगिंग को लिंक या अनलिंक करने के लिए, आपको निम्न में से किसी भी भूमिका में बंडल की गई अनुमतियों की आवश्यकता है: प्रोजेक्ट ओनर या एडिटर या फायरबेस डेवलपमेंट एडमिन

  2. यह चुनने के लिए ऑन-स्क्रीन निर्देशों का पालन करें कि आपकी किन होस्टिंग साइटों को क्लाउड लॉगिंग में लॉग निर्यात करना चाहिए।

    यदि आपके पास पहले से ही एक या अधिक सक्रिय होस्टिंग साइट हैं, तो लिंकिंग वर्कफ़्लो आपकी प्रत्येक होस्टिंग साइट से लॉग के लिए अनुमानित डेटा उपयोग स्तर प्रदर्शित करता है। यह मान पिछले 30 दिनों से अनुमानित है।

क्लाउड लॉगिंग से लिंक करने के बाद, आपकी होस्टिंग साइटों के लिए किसी भी नए अनुरोध के लॉग आमतौर पर अनुरोध किए जाने के 30 मिनट के भीतर दिखाई देंगे।

आप क्लाउड लॉगिंग से फायरबेस होस्टिंग को अनलिंक भी कर सकते हैं, जो क्लाउड लॉगिंग के लिए वेब अनुरोध लॉग के निर्यात को रोकता है।

लॉग के लिए अपने डेटा उपयोग की निगरानी करें

क्लाउड लॉगिंग से लिंक करने के बाद, आप अपनी होस्टिंग साइटों से लॉग्स के लिए डेटा उपयोग स्तर देख सकते हैं:

अपनी साइट को बेहतर समझें

Google क्लाउड कंसोल में लॉग व्यूअर इंटरफ़ेस क्वेरी और अंतर्निर्मित फ़िल्टर और डेटा पैनल का उपयोग करके आपके विशिष्ट लॉग और डेटा को देखने के लिए टूल प्रदान करता है। प्रश्नों के साथ अपने लॉग को फ़िल्टर करने के बारे में नीचे अगले भाग में और जानें।

  • आपकी साइट का ट्रैफ़िक विस्तृत स्तर पर कहाँ से आ रहा है?
    आप स्रोत आईपी, रेफरर, शहर और स्थिति सहित प्रत्येक अनुरोध के बारे में जानकारी देख सकते हैं।

  • उपयोगकर्ता आपकी साइट पर कब आ रहे हैं?
    विशिष्ट समय सीमाओं के अनुसार वितरण देखने के लिए आप हिस्टोग्राम पैनल का उपयोग कर सकते हैं। यह आपको आपके ऐप के उपयोग की सामान्य चोटियों और गिरावट के बारे में जानकारी दे सकता है, साथ ही ट्रैफ़िक में किसी भी अप्रत्याशित स्पाइक्स को प्रकट कर सकता है।

  • एंड-यूज़र अनुरोधों के लिए स्थिति वितरण क्या है?
    आप प्रत्येक अनुरोध की स्थिति देख सकते हैं और यहां तक ​​कि त्रुटि प्राप्त करने वाले अनुरोधों का निदान भी कर सकते हैं। आप अपने लॉग को Critical , Error या Warning द्वारा फ़िल्टर कर सकते हैं।

  • आपकी साइट को अनुरोध का जवाब देने में कितना समय लगता है?
    आप प्रत्येक लॉग में कैप्चर किए गए latency मान का उपयोग करके प्रत्येक अनुरोध के लिए अपनी साइट की विलंबता देख सकते हैं।

  • क्या आपकी साइट कॉन्टेंट कैशिंग का लाभ उठा रही है?
    प्रत्येक लॉग में एक cacheHit फ़ील्ड होती है जो आपको बताती है कि क्या आपकी साइट के संसाधन को होस्टिंग के CDN कैश से जल्दी से सर्व किया गया था, या यदि उसे होस्टिंग बैकएंड तक पूरी यात्रा करनी पड़ी। यह Firebase के वैश्विक CDN का अधिकतम लाभ उठाकर आपको अपनी वेबसाइट के प्रदर्शन को बेहतर बनाने में मदद कर सकता है। उदाहरण के लिए, आप अपनी स्थिर संपत्तियों और गतिशील सामग्री की कैशिंग आदतों को बेहतर बनाने के लिए डेटा का उपयोग कर सकते हैं।

  • आपके विभिन्न डोमेन में ट्रैफ़िक का वितरण क्या है?
    यदि आपके पास एक से अधिक डोमेन या होस्टिंग साइट हैं, तो आप अपने लॉग को डोमेन या साइट के अनुसार फ़िल्टर कर सकते हैं। इससे आप देख सकते हैं कि आपका ट्रैफ़िक कैसे वितरित किया जाता है। जब आप डोमेन के अनुसार फ़िल्टर करते हैं, तो आप यह ट्रैक कर सकते हैं कि किस डोमेन पर सबसे अधिक बार विज़िट किया गया है।

प्रश्नों के साथ अपने लॉग फ़िल्टर करें

प्रश्नों के साथ अपने लॉग को फ़िल्टर करने के तरीके के बारे में जानने के लिए, लॉग व्यूअर और बिल्डिंग लॉग क्वेरी का उपयोग करके नमूना क्वेरी पर जाएँ। नीचे दी गई तालिका उन प्रश्नों के लिए उपलब्ध फ़ील्ड का वर्णन करती है।

होस्टिंग के लिए, यहाँ एक क्वेरी के लिए कुछ शुरुआती फ़िल्टर दिए गए हैं:

  • संसाधन ( resource.type ) — firebase_domain (Firebase होस्टिंग साइट डोमेन)
  • लॉग नाम ( logName ) - webrequests (फायरबेस होस्टिंग)

प्रत्येक लॉग प्रविष्टि में एक पूर्वनिर्धारित संरचना और क्वेरी करने योग्य फ़ील्ड होते हैं ( LogEntry देखें)। होस्टिंग के लिए, कुछ फ़ील्ड HTTP अनुरोध के लिए मानक हैं, लेकिन अन्य फ़ील्ड मान भी हैं जो उस प्रोसेसिंग से आते हैं जो होस्टिंग प्रत्येक अनुरोध पर चलती है।

मैदान विवरण
फायरबेस होस्टिंग निम्न फ़ील्ड को लॉग प्रविष्टि के httpRequest ऑब्जेक्ट में संग्रहीत करता है।
इन क्षेत्रों को HTTP विनिर्देशन में परिभाषित किया गया है।
cacheHit होस्टिंग सीडीएन के पास कैश में प्रतिक्रिया का संसाधन था या नहीं
latency अनुरोध की अवधि, s पोस्टफ़िक्स के साथ सेकंड में (उदाहरण के लिए, 1.256s )
protocol अनुरोध के लिए उपयोग किया जाने वाला प्रोटोकॉल (उदाहरण के लिए, HTTP/1.1 , HTTP/2 , websocket )
referer पिछले वेब पेज का पता जिससे वर्तमान में अनुरोधित पेज के लिंक का अनुसरण किया गया था (यदि मौजूद है)
remoteIp अनुरोध के लिए मूल ग्राहक आईपी
requestMethod अनुरोध विधि ( GET , POST , PUT , आदि)
requestSize बाइट्स में अनुरोध का आकार
requestUrl अनुरोध का पूरा URL (उदाहरण के लिए,
https://foo.web.app/bar या https://custom.domain.com?query=param )
responseSize बाइट्स में HTTP प्रतिक्रिया आकार
serverIp जनसंख्या रहित
status HTTP प्रतिसाद स्थिति (उदाहरण के लिए, 200 या 404 )
userAgent अनुरोध का उपयोगकर्ता-एजेंट शीर्षलेख
फायरबेस होस्टिंग लॉग प्रविष्टि के jsonPayload ऑब्जेक्ट में अतिरिक्त फ़ील्ड संग्रहीत करता है।
acceptEncoding (HTTP अनुरोध से) कौन सी सामग्री एन्कोडिंग, आमतौर पर एक संपीड़न एल्गोरिथ्म, ग्राहक समर्थन करता है (उदाहरण के लिए, gzip या compress )
billable आपके प्रोजेक्ट को अनुरोध के लिए बिल किया गया था या नहीं
customDomain कस्टम डोमेन के लिए अनुरोध किया गया था या नहीं
hostname वह होस्टनाम जिसके विरुद्ध अनुरोध किया गया था
remoteIpCountry अनुरोध का मूल देश
remoteIpCity अनुरोध का मूल शहर

लॉग-आधारित मेट्रिक्स का उपयोग करें

आप लॉग-आधारित मेट्रिक देख और बना सकते हैं, फिर चार्ट बनाने और नीतियों को अलर्ट करने के लिए क्लाउड मॉनिटरिंग में इन मेट्रिक का उपयोग कर सकते हैं।

  • उत्तोलन पूर्वनिर्धारित सिस्टम मेट्रिक्स जो स्वचालित रूप से रिकॉर्ड किए जाते हैं, जैसे कि एक विशिष्ट समय अवधि के भीतर हुई लॉगिंग घटनाओं की संख्या।

  • अपने प्रोजेक्ट के लिए यूज़र-डिफ़ाइंड मेट्रिक्स बनाएं। आप किसी दी गई क्वेरी से मेल खाने वाली लॉग प्रविष्टियों की संख्या की गणना कर सकते हैं या मेल खाने वाली लॉग प्रविष्टियों के साथ विशेष मानों का ट्रैक रख सकते हैं। आप रेगुलर एक्सप्रेशन का उपयोग करके फ़िल्टर कर सकते हैं।

  • विशेष संदेशों वाली लॉग प्रविष्टियों की संख्या रिकॉर्ड करने या लॉग प्रविष्टियों में रिपोर्ट की गई विलंबता जानकारी निकालने के लिए क्लाउड मॉनिटरिंग का उपयोग करें। फिर आप इन मीट्रिक का उपयोग चार्ट और अलर्टिंग नीतियों में कर सकते हैं।

फायरबेस होस्टिंग निम्नलिखित होस्टिंग-विशिष्ट लॉगिंग मेट्रिक्स भी उत्पन्न करती है। ये मेट्रिक्स एक लॉग प्रविष्टि के लिए विशिष्ट नहीं हैं, बल्कि समग्र रूप से विशिष्ट होस्टिंग साइट के लिए हैं।

  • log_bytes : प्रत्येक साइट के लिए डेटा उपयोग की कुल बाइट

  • response_count : साइट के लिए लिखी गई प्रतिक्रियाओं की कुल संख्या

    इस मीट्रिक में HTTP स्थिति का क्षेत्र शामिल है, इसलिए आप HTTP प्रतिक्रियाओं को स्थिति के अनुसार प्लॉट कर सकते हैं (उदाहरण के तौर पर)।

लॉग को अन्य Google क्लाउड टूल में निर्यात करें

आप अपनी साइट के लॉग को क्लाउड मॉनिटरिंग या BigQuery जैसे अन्य Google क्लाउड टूल में भी निर्यात कर सकते हैं, उदाहरण के लिए:

  • क्लाउड मॉनिटरिंग का उपयोग करके, आप लॉग-आधारित मेट्रिक्स बना सकते हैं जिनका उपयोग आप चार्ट और अलर्टिंग नीतियों में कर सकते हैं।

  • BigQuery का उपयोग करके, आप निम्न में से कोई भी कार्य कर सकते हैं:

    • अपने होस्टिंग डेटा के डैशबोर्ड बनाने के लिए डेटा स्टूडियो का उपयोग करें।
    • अपने अनुरोधों के बारे में अधिक जानकारी प्राप्त करने के लिए क्वेरीज़ चलाएँ (औसत प्रतिक्रिया आकार, कैशे हिट्स बनाम मिसेज, आदि)।
    • जानें कि आपके उपयोगकर्ता वास्तव में कौन से URL का अनुरोध करते हैं।
    • अपने होस्टिंग डेटा को अन्य Firebase डेटा के साथ संयोजित करें जिसे आपने BigQuery को निर्यात किया था और इसे नए तरीकों से क्वेरी करें।