लाइब्रेरी को Google Ads API के साथ होने वाले इंटरैक्शन को अलग-अलग तरीकों से लॉग करने के लिए कॉन्फ़िगर किया जा सकता है. इसमें पूरी जानकारी वाले अनुरोधों और जवाबों के साथ-साथ, खास जानकारी वाले छोटे मैसेज लॉग किए जा सकते हैं. ये सेटिंग, क्लाइंट लाइब्रेरी के कॉन्फ़िगरेशन से मैनेज की जाती हैं. नीचे अलग-अलग तरह के कॉन्फ़िगरेशन के विकल्पों की जानकारी दी गई है.
लाइब्रेरी में, डिफ़ॉल्ट रूप से Python के बिल्ट-इन लॉगिंग
फ़्रेमवर्क और लॉग को stderr
का इस्तेमाल किया जाता है. अगर शामिल किया जाता है, तो आपके कॉन्फ़िगरेशन में तय किया गया logging
ऑब्जेक्ट, सीधे logging.config.dictConfig
को dict
के तौर पर पास कर दिया जाता है.
क्लाइंट को शुरू करने से पहले, लॉगिंग कॉन्फ़िगरेशन को सेट करके भी प्रोग्राम के हिसाब से लॉगिंग को कॉन्फ़िगर किया जा सकता है. क्लाइंट-लॉगर इंस्टेंस को वापस लाया जा सकता है और इसे नीचे दिए गए उदाहरण की मदद से कॉन्फ़िगर किया जा सकता है:
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 इंटरसेप्टर बनाकर, इसे अपने हिसाब से लॉग करने के लिए सेट अप किया जा सकता है. ज़्यादा जानकारी के लिए और कस्टम लॉगिंग इंटरसेप्टर का उदाहरण देखने के लिए, लॉग इन करने की गाइड देखें.