2012-07-15 1 views
7

मेरे पास कंटेनर-आधारित ऐप्स स्क्रिप्ट लिखने का कुछ अनुभव है, लेकिन वेब ऐप्स के लिए बिल्कुल नया है।Google Apps स्क्रिप्ट वेब ऐप को डीबग करने का प्रभावी तरीका

मैं एक वेब ऐप कैसे डिबग कर सकता हूं (उदा। वैरिएबल वैल्यू, कोड के माध्यम से कदम आदि)? कंटेनर बाउंड स्क्रिप्ट में यह आसान था, क्योंकि मैं ब्रेकपॉइंट्स सेट कर सकता था, ऐप स्क्रिप्ट डीबगर का उपयोग करता हूं - मैं इसके बारे में वेब पेज में कैसे जा सकता हूं उदा। जब मैं एक DoPost निष्पादित करता हूं?

+0

[यहां] (https://developers.google.com/apps-script/troubleshooting) आपके प्रश्न का उत्तर है। – megabyte1024

+0

मुझे लगता है कि उस पृष्ठ पर कुछ भी विशेष रूप से वेब ऐप्स के लिए बहुत मदद नहीं करता है? उनमें से कई वेब ऐप्स पर लागू नहीं होते हैं। – BruceM

उत्तर

6

अपनी उत्कृष्ट पुस्तक "Google स्क्रिप्ट" में, जेम्स फेरेरा तीन ब्राउज़र विंडो के साथ अपना खुद का विकास पर्यावरण स्थापित करने की वकालत करता है; कोड के लिए एक, लाइव व्यू के लिए एक (प्रकाशित करें, वेब ऐप के रूप में तैनात करें, आपको एक "नवीनतम कोड" लिंक प्रदान किया जाता है जो रीफ्रेश होने पर नवीनतम दृश्य में लाइव व्यू को अपडेट करेगा), और एक स्प्रेडशीट के लिए जो त्रुटियों को लॉग करता है (कोड के बिट्स के चारों ओर लपेटकर कोशिश/पकड़ का उपयोग करके आप एक नजर रखना चाहते हैं)।

+1

धन्यवाद - यह भी पता नहीं था कि अस्तित्व में है - अद्भुत लग रहा है! मैंने अपनी संबंधित साइट, https://sites.google.com/site/scriptsexamples/simple-text-editor भी पाया - अब तक के सबसे व्यापक उदाहरणों के साथ मैंने देखा है। – BruceM

1

वेब ऐप्स में, Logger.log() के माध्यम से चर के सबसे बुनियादी डिबगिंग भी काम नहीं करते हैं!

कम से कम सरल परिवर्तनीय लॉगिंग उपलब्ध कराने का एक अच्छा समाधान Peter Herrmann's BetterLog for Apps Script है। यह आपको एक स्प्रेडशीट में लॉग इन करने की अनुमति देता है (आपकी वर्किंग स्प्रेडशीट या एक अलग के समान)।

स्थापना बहुत आसान है - बस एक बाहरी संसाधन (Github रीडमी देखें) और कोड की एक पंक्ति मानक लॉगर वस्तु ओवरराइड करने के लिए जोड़ें:

Logger = BetterLog.useSpreadsheet('your-spreadsheet-key-goes-here'); 

याद रखें, कि spreedsheet है कि आप दे यहां एक पैरामीटर के रूप में लॉगिंग आउटपुट के लिए उपयोग किया जाएगा और इस प्रकार किसी भी द्वारा लिखने योग्य होना चाहिए!

BetterLog दिए गए स्प्रेडशीट में "लॉग" नामक एक नई शीट तैयार करेगा और प्रत्येक लॉग कॉल को उस शीट की एक अलग पंक्ति में लिख देगा।

संबंधित मुद्दे