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

कॉन्फ़िगरेशन को 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: ऐप्लिकेशन के डिफ़ॉल्ट क्रेडेंशियल (GOOGLE_ADS_USE_APPLICATION_DEFAULT_CREDENTIALS) का इस्तेमाल करके पुष्टि करने के लिए, true पर सेट करें. यह सुविधा, google-ads-googleads के 36.1.0 और इसके बाद के वर्शन में काम करती है.
  • authentication: कस्टम ऑथेंटिकेशन ऑब्जेक्ट, जैसे कि Proc (updater_proc), कीफ़ाइल पाथ या 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: एचटीटीपी प्रॉक्सी यूआरएल डालें.