लाइब्रेरी को Google Ads API के साथ कई तरह से होने वाले इंटरैक्शन को लॉग करने के लिए कॉन्फ़िगर किया जा सकता है. आप ज़्यादा जानकारी वाले अनुरोध और उनके जवाब लॉग कर सकते हैं. साथ ही, कम शब्दों में जवाब दे सकते हैं. ये सेटिंग, क्लाइंट लाइब्रेरी के कॉन्फ़िगरेशन से मैनेज की जाती हैं. कॉन्फ़िगरेशन के अलग-अलग तरह के विकल्पों के बारे में नीचे जानकारी दी गई है.
लाइब्रेरी में डिफ़ॉल्ट रूप से, Python की बिल्ट-इन लॉगिंग फ़्रेमवर्क और stderr
पर लॉग इस्तेमाल किए जाते हैं. अगर शामिल किया जाता है, तो आपके कॉन्फ़िगरेशन में तय किया गया logging
ऑब्जेक्ट, dict
के तौर पर सीधे logging.config.dictConfig
को पास कर दिया जाता है.
क्लाइंट को शुरू करने से पहले, लॉगिंग कॉन्फ़िगरेशन सेट करके, लॉग इन करने की प्रोसेस को प्रोग्राम के हिसाब से कॉन्फ़िगर भी किया जा सकता है. क्लाइंट लॉगर इंस्टेंस को फिर से हासिल किया जा सकता है और इसे नीचे दिए गए उदाहरण की मदद से कॉन्फ़िगर किया जा सकता है:
import logging
logging.basicConfig(level=logging.INFO, format='[%(asctime)s - %(levelname)s] %(message).5000s')
logging.getLogger('google.ads.googleads.client').setLevel(logging.INFO)
ध्यान दें कि क्लाइंट को शुरू करने पर, क्लाइंट लॉगर कॉन्फ़िगर किया जाता है. लॉगिंग कॉन्फ़िगरेशन में होने वाले किसी भी बदलाव को अनदेखा कर दिया जाएगा. YAML फ़ाइल में लॉगिंग कॉन्फ़िगरेशन को प्रोग्राम के हिसाब से बदलने के लिए, क्लाइंट के शुरू करने से पहले ऊपर दी गई लाइनों को कॉल करना न भूलें.
लॉग लेवल
क्लाइंट अलग-अलग लेवल पर लॉग जनरेट करता है. साथ ही, कॉन्फ़िगरेशन सेट करके नीचे दिए गए कुछ या सभी लेवल देखे जा सकते हैं:
लेवल | अनुरोध सफल रहा | अनुरोध पूरा नहीं किया जा सका |
---|---|---|
DEBUG |
JSON के तौर पर, ज़्यादा जानकारी वाला लॉग, जिसमें पूरे अनुरोध और रिस्पॉन्स ऑब्जेक्ट शामिल हैं. | पूरे अनुरोध और अपवाद ऑब्जेक्ट वाला ज़्यादा जानकारी वाला लॉग, जो JSON फ़ॉर्मैट में है. |
INFO |
खास अनुरोध और जवाब वाले फ़ील्ड के साथ कम शब्दों में खास जानकारी. | पूरे अनुरोध और अपवाद ऑब्जेक्ट वाला ज़्यादा जानकारी वाला लॉग, जो JSON फ़ॉर्मैट में है. |
WARNING |
कोई नहीं | अनुरोध की खास जानकारी, अपवाद की स्थिति, और मैसेज के साथ कम शब्दों में जवाब. |
Python लॉगिंग फ़्रेमवर्क, कॉन्फ़िगर किए गए लेवल से कम गंभीर लॉग मैसेज को अनदेखा करता है. इसलिए, WARNING
पर सेट करने का मतलब है कि आपको सिर्फ़ पूरे न हो पाने वाले अनुरोधों से जुड़े सटीक मैसेज दिखेंगे. वहीं, DEBUG
पर सेट करने का मतलब है कि आपको ऊपर दी गई टेबल में सभी तरह के लॉग दिखेंगे.
फ़ाइल में लॉग इन किया जा रहा है
लॉग मैसेज को आसानी से किसी फ़ाइल में पाइप किया जा सकता है. उदाहरण के लिए, get_campaigns
को चलाते समय::
python get_campaigns.py -c $CLIENT_ID 2> example.log
लॉग इन करने वाले इंटरसेप्टर
Python क्लाइंट लाइब्रेरी, अनुरोध और रिस्पॉन्स की जानकारी को ऐक्सेस और लॉग करने के लिए, gRPC इंटरसेप्टर का इस्तेमाल करती है. आपके पास कस्टम लॉजिक की मदद से gRPC इंटरसेप्टर बनाकर, अपनी पसंद के मुताबिक लॉगिन करने की सुविधा सेट अप करने का विकल्प है. ज़्यादा जानकारी और कस्टम लॉगिंग इंटरसेप्टर के उदाहरण के लिए, लॉगिंग गाइड देखें.