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

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

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

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

अगर GoogleAdsClient ऑब्जेक्ट को इंस्टैंशिएट करते समय कोई आर्ग्युमेंट पास नहीं किया जाता है, तो लाइब्रेरी इस क्रम में कॉन्फ़िगरेशन फ़ाइल खोजती है:

  1. GOOGLE_ADS_CONFIGURATION_FILE_PATH एनवायरमेंट वैरिएबल में बताया गया पाथ.
  2. आपकी HOME डायरेक्ट्री (~/google_ads_config.rb) में google_ads_config.rb नाम की फ़ाइल.

इसके अलावा, 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'
  # ... additional configuration
end

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

client.configure do |config|
  config.login_customer_id = 'INSERT_LOGIN_CUSTOMER_ID_HERE'
  # ... additional configuration
end

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

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

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

  • refresh_token: आपका OAuth रीफ़्रेश टोकन (GOOGLE_ADS_REFRESH_TOKEN).
  • client_id: आपका OAuth क्लाइंट आईडी (GOOGLE_ADS_CLIENT_ID).
  • client_secret: आपका OAuth क्लाइंट सीक्रेट (GOOGLE_ADS_CLIENT_SECRET).
  • keyfile: सेवा खाते की JSON कुंजी वाली फ़ाइल का पाथ (GOOGLE_ADS_JSON_KEY_FILE_PATH).
  • impersonate: सेवा खाते का इस्तेमाल करते समय, किसी दूसरे व्यक्ति के तौर पर काम करने के लिए ईमेल पता पूरे डोमेन के लिए ऐक्सेस देने की सुविधा (GOOGLE_ADS_IMPERSONATED_EMAIL) के साथ.
  • use_application_default_credentials: true पर सेट करें, ताकि ऐप्लिकेशन के डिफ़ॉल्ट क्रेडेंशियल (GOOGLE_ADS_USE_APPLICATION_DEFAULT_CREDENTIALS) का इस्तेमाल करके पुष्टि की जा सके. यह google-ads-googleads v36.1.0 और इसके बाद के वर्शन में काम करता है.
  • authentication: कस्टम ऑथेंटिकेशन ऑब्जेक्ट, जैसे कि Proc (updater_proc), keyfile path या Hash या GRPC::Core::Channel / GRPC::Core::ChannelCredentials. client_id, client_secret, refresh_token, और keyfile को बदलता है.
  • login_customer_id: login-customer-id दस्तावेज़ (GOOGLE_ADS_LOGIN_CUSTOMER_ID) देखें.
  • linked_customer_id: लिंक किए गए ग्राहक का आईडी (GOOGLE_ADS_LINKED_CUSTOMER_ID).
  • ads_assistant: Google Ads API Assistant हेडर के लिए वैकल्पिक आइडेंटिफ़ायर (GOOGLE_ADS_ASSISTANT; इसे v37.0.0 में gaada के तौर पर जोड़ा गया और v39.0.0 में इसका नाम बदलकर ads_assistant कर दिया गया).
  • http_proxy: एचटीटीपी या एचटीटीपीएस प्रॉक्सी यूआरआई (GOOGLE_ADS_RUBY_HTTP_PROXY) ज़रूरी नहीं है.
  • api_endpoint: एपीआई एंडपॉइंट को बदलने का विकल्प (GOOGLE_ADS_ENDPOINT).
  • treat_deprecation_warnings_as_errors: बंद हो चुके लाइब्रेरी कोड को शुरू करने पर, Warning#warn को कॉल करने के बजाय अपवाद दिखाएं (डिफ़ॉल्ट रूप से false).
  • warn_on_all_deprecations: हर कॉल पर, बंद होने की सूचना दें. ऐसा हर कॉल साइट पर एक बार सूचना देने के बजाय किया जाता है (डिफ़ॉल्ट रूप से false).

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

  • 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

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

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

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