कॉन्फ़िगरेशन

कॉन्फ़िगरेशन, Config क्लास का इस्तेमाल करके किया जाता है. इस क्लास को कई तरीकों से ऐक्सेस किया जा सकता है. जैसे, कॉन्फ़िगरेशन फ़ाइल लिखकर, बनाते समय वैल्यू तय करके या एनवायरमेंट वैरिएबल से वैल्यू लोड करके.

कॉन्फ़िगरेशन फ़ाइल

क्लाइंट को इंस्टैंटिएट करते समय, इस्तेमाल करने के लिए google_ads_config.rb फ़ाइल तय की जा सकती है.

अगर GoogleAdsClient ऑब्जेक्ट को इंस्टैंटिएट करते समय किसी भी आर्ग्युमेंट का इस्तेमाल नहीं किया जाता है, तो लाइब्रेरी उस जगह पर देखेगी जो GOOGLE_ADS_CONFIGURATION_FILE_PATH एनवायरमेंट वैरिएबल में दी गई है. अगर वह वैरिएबल सेट नहीं है, तो लाइब्रेरी आपकी HOME डायरेक्ट्री में फ़ाइल ढूंढेगी.

इसके अलावा, GoogleAdsClient ऑब्जेक्ट को इंस्टैंटिएट करते समय, यहां दिए गए तरीके से पाथ तय किया जा सकता है. ऐसे में, क्लाइंट उस पाथ पर फ़ाइल ढूंढेगा.

  client = Google::Ads::GoogleAds::GoogleAdsClient.new("path/to/file.rb")

इस फ़ाइल को जनरेट करने का सबसे आसान तरीका यह है कि GitHub रिपॉज़िटरी से google_ads_config.rb को कॉपी करें. इसके बाद, इसमें बदलाव करके अपना रीफ़्रेश टोकन, क्लाइंट आईडी, और क्लाइंट सीक्रेट शामिल करें.

डाइनैमिक कॉन्फ़िगरेशन

लाइब्रेरी को इंस्टैंटिएट करते समय, कॉन्फ़िगरेशन को डाइनैमिक तौर पर सेट अप किया जा सकता है. इसके अलावा, इसे बाद में भी सेट अप किया जा सकता है:

client = Google::Ads::GoogleAds::GoogleAdsClient.new do |config|
    config.client_id = 'INSERT_CLIENT_ID_HERE' # ... more configuration
end

इंस्टैंटिएट करने के बाद भी, कॉन्फ़िगरेशन में बदलाव किया जा सकता है:

client.configure do |config|
  config.login_customer_id = 'INSERT_LOGIN_CUSTOMER_ID_HERE'

# ... more configuration
end

कॉन्फ़िगरेशन फ़ील्ड

Config ऑब्जेक्ट में ये फ़ील्ड इस्तेमाल किए जा सकते हैं.

सामान्य फ़ील्ड:

लॉगिंग फ़ील्ड. पूरी जानकारी के लिए, लॉगिंग गाइड देखें.

  • log_level: लॉग किए जाने वाले मैसेज का कम से कम लॉग लेवल. उदाहरण के लिए, 'DEBUG' तय करने पर, आपको सभी लॉग मैसेज दिखेंगे. वहीं, 'INFO' तय करने पर, DEBUG मैसेज नहीं दिखेंगे, लेकिन अन्य सभी मैसेज दिखेंगे.
  • log_target: वह जगह जहां आपको लॉग करना है, जैसे कि STDERR.
  • logger: अपना कस्टम लॉगर तय करें. इसे तय करने पर, log_level और log_target, दोनों बदल जाएंगे.

एनवायरमेंट वैरिएबल

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

एनवायरमेंट वैरिएबल को अपने Config में लोड करने के लिए, load_environment_config को कॉल करें:

client = Google::Ads::GoogleAds::GoogleAdsClient.new
client.load_environment_config

जब भी इस फ़ंक्शन को कॉल किया जाता है, तब एनवायरमेंट वैरिएबल की मौजूदा स्थिति, Config में मौजूद किसी भी चीज़ को बदल देगी. इस तरीके से, उदाहरण के लिए, डिफ़ॉल्ट कॉन्फ़िगरेशन सेट किया जा सकता है. हालांकि, एनवायरमेंट वैरिएबल का इस्तेमाल करके, कुछ वैल्यू को बदला जा सकता है. इसके अलावा, एनवायरमेंट वैरिएबल का इस्तेमाल करके, पूरी तरह से कॉन्फ़िगरेशन सेट किया जा सकता है.

सभी लाइब्रेरी के साथ काम करने वाले एनवायरमेंट वैरिएबल के अलावा, Ruby लाइब्रेरी में दो और वैरिएबल होते हैं:

  • GOOGLE_ADS_RUBY_LOG_LEVEL: log_level जैसा कि पहले बताया गया है.
  • GOOGLE_ADS_RUBY_HTTP_PROXY: एचटीटीपी प्रॉक्सी तय करें.