लॉगिंग और मेट्रिक, कोड को डीबग करने और उसकी निगरानी करने के अहम टूल हैं. App Hosting की मदद से, अपने वेब ऐप्लिकेशन को पावर देने वाली Google Cloud सेवाओं के लॉग और मेट्रिक को तुरंत देखा जा सकता है. ये सेवाएं हैं: Cloud Run, Cloud Build, और Cloud CDN.
Node.js के console.log जैसे स्टैंडर्ड लॉगिंग सिंटैक्स का इस्तेमाल करके, Cloud Logging में लॉग
एंट्री लिखी जा सकती हैं.
कंसोल में इस्तेमाल की जानकारी देखना
हर बैकएंड में खास जानकारी टैब होता है. इसमें, पिछले सात दिनों में आपके ऐप्लिकेशन के ट्रैफ़िक (अनुरोधों की संख्या) और गड़बड़ी की दर की खास जानकारी दिखती है.
किसी बैकएंड के लॉग टैब में, "बिल्ड लॉग" (Cloud Build से) और "रनटाइम लॉग" (Cloud Run और Cloud CDN से) देखे और फ़िल्टर किए जा सकते हैं.
हर बैकएंड में इस्तेमाल टैब भी होता है. इसमें, आपके ऐप्लिकेशन की गतिविधि और इस्तेमाल के कई ग्राफ़ दिखते हैं. दिखाए गए डेटा में, CDN बैंडविथ और अनुरोध, Cloud Run सीपीयू और मेमोरी का इस्तेमाल वगैरह शामिल होता है.
Google Cloud कंसोल में, Cloud Run के इस्तेमाल से जुड़ी अतिरिक्त मेट्रिक (जैसे, सीपीयू का इस्तेमाल और मेमोरी का इस्तेमाल) देखी जा सकती हैं.
कंसोल में लॉग देखना
रोलआउट के लिए, Firebase console के कॉन्टेक्स्ट मेन्यू (सबसे ऊपर दाएं कोने में मौजूद तीन बिंदुओं वाला मेन्यू) से, Cloud Run वर्शन की जानकारी और गड़बड़ियों के साथ-साथ, बिल्ड लॉग को तुरंत देखा जा सकता है.
इन लॉग में, App Hosting
डिप्लॉयमेंट को डीबग करने के लिए काम की जानकारी होती है. उदाहरण के लिए, Cloud Run लॉग में यह जानकारी दिखती है कि package.json
कब नहीं मिला.
बिल्ड लॉग में, बिल्ड का आउटपुट दिखता है. इससे यह तय किया जा सकता है कि गड़बड़ियां, आपके फ़्रेमवर्क में कॉन्फ़िगरेशन की वजह से हुईं या
App Hosting कॉन्फ़िगरेशन की वजह से. इसमें आपकी बुनियादी runConfig सेटिंग भी दिखती हैं. साथ ही, यह भी पता चलता है कि सेटिंग कब मौजूद नहीं हैं या apphosting.yaml कब मौजूद नहीं है:
> next build
▲ Next.js 14.1.4
- Environments: .env
...
Route (app) Size First Load JS
┌ λ / 4.79 kB 214 kB
├ λ /_not-found 882 B 85.3 kB
└ λ /restaurant/[id] 5.28 kB 207 kB
+ First Load JS shared by all 84.4 kB
├ chunks/69-6678c81190a8fe82.js 29 kB
├ chunks/fd9d1056-51920e345d2966e8.js 53.4 kB
└ other shared chunks (total) 1.98 kB
Cloud Logging में लॉग लिखना
अगर आपको कस्टम इवेंट लॉग करने हैं, तो Cloud Logging से
Cloud Run में लॉग लिखे जा सकते हैं. यहां, सर्वर से रेंडर किया गया आपका कोड चलता है. console.log और console.error जैसे स्टैंडर्ड JavaScript लॉगिंग कॉल का इस्तेमाल करें. उदाहरण के लिए,
Next.js के रूट हैंडलर के लिए कोड से कस्टम एंट्री लिखने के लिए,
आपको कुछ ऐसा करना होगा:
console.log()कमांड का लॉग लेवल INFO होता है.console.info()कमांड का लॉग लेवल INFO होता है.console.warn()कमांड का लॉग लेवल ERROR होता है.console.error()कमांड का लॉग लेवल ERROR होता है.- इंटरनल सिस्टम मैसेज का लॉग लेवल DEBUG होता है.
ध्यान दें कि आपके ऐप्लिकेशन के
सर्वर से रेंडर किए गए कोड के लिए, console.log पाइप के ज़रिए Cloud Logging में जाता है. स्टैटिक रेंडरिंग से जुड़े इवेंट,
Cloud Build लॉग में भेजे जाते हैं. वहीं, सर्वर रेंडरिंग से जुड़े इवेंट, Cloud Run
लॉग में भेजे जाते हैं.
सर्वर की गड़बड़ियां देखना
Cloud Error Reporting आपके App Hosting Cloud Run इंस्टेंस की गड़बड़ियों को एक जगह इकट्ठा करता है. आपके पास Cloud Error Reporting को इस तरह कॉन्फ़िगर करने का विकल्प होता है कि नई गड़बड़ियां होने पर, आपको सूचना मिले.