پیکربندی

پیکربندی با استفاده از یک کلاس Config انجام می شود. شما می توانید به روش های مختلفی به این کلاس دسترسی داشته باشید، مانند نوشتن یک فایل پیکربندی، تعیین مقادیر در هنگام ایجاد، یا بارگذاری مقادیر از متغیرهای محیط.

فایل پیکربندی

می توانید یک فایل google_ads_config.rb را برای استفاده در هنگام نمونه سازی مشتری مشخص کنید.

اگر هنگام نمونه سازی از هیچ آرگومان استفاده نمی کنید:

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

سپس کتابخانه در مکان مشخص شده در متغیر محیطی GOOGLE_ADS_CONFIGURATION_FILE_PATH نگاه خواهد کرد. اگر آن متغیر تنظیم نشده باشد، کتابخانه در دایرکتوری HOME شما برای فایل جستجو می کند.

همچنین می توانید مسیری را مشخص کنید:

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

در این صورت کلاینت فایل را در آن مسیر فایل جستجو می کند.

ساده ترین راه برای تولید این فایل این است که google_ads_config.rb از مخزن GitHub کپی کنید و آن را طوری تغییر دهید که شامل نشانه رفرش، شناسه مشتری و راز مشتری باشد.

پیکربندی پویا

می‌توانید هنگام نمونه‌سازی کتابخانه یا حتی پس از آن، پیکربندی را به صورت پویا تنظیم کنید:

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 از فیلدهای زیر پشتیبانی می کند.

زمینه های عمومی:

  • refresh_token : نشانه بازخوانی OAuth شما.
  • client_id : شناسه مشتری OAuth شما.
  • client_secret : راز مشتری OAuth شما.
  • developer_token : توکن توسعه دهنده شما برای دسترسی به API.
  • login_customer_id : مستندات login-customer-id را ببینید.

فیلدهای ورود به سیستم برای جزئیات کامل به راهنمای ورود به سیستم مراجعه کنید.

  • 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 وجود دارد، بازنویسی می‌کند. با استفاده از این مکانیسم، می‌توانید برای مثال یک پیکربندی پیش‌فرض داشته باشید، اما مقادیر خاصی را با استفاده از متغیرهای محیطی لغو کنید، یا می‌توانید به طور کامل با متغیرهای محیط پیکربندی کنید.

علاوه بر متغیرهای محیطی که توسط همه کتابخانه ها پشتیبانی می شود، کتابخانه روبی دارای دو متغیر اضافی است:

  • GOOGLE_ADS_RUBY_LOG_LEVEL : به عنوان log_level بالا.
  • GOOGLE_ADS_RUBY_HTTP_PROXY : یک پروکسی HTTP را مشخص کنید.