אפשרויות הגדרה

ההגדרה מנוהלת באמצעות המחלקה Config. אפשר להגדיר את הלקוח באמצעות קובץ הגדרות, לציין ערכים באופן דינמי בזמן היצירה או לטעון ערכים ממשתני סביבה.

קובץ תצורה

אפשר לציין קובץ google_ads_config.rb לשימוש כשיוצרים מופע של הלקוח.

אם לא מעבירים ארגומנטים כשמפעילים אובייקט GoogleAdsClient, הספרייה מחפשת קובץ הגדרות לפי הסדר הבא:

  1. הנתיב שצוין במשתנה הסביבה GOOGLE_ADS_CONFIGURATION_FILE_PATH.
  2. קובץ בשם google_ads_config.rb בספרייה HOME (~/google_ads_config.rb).

אפשר גם להעביר נתיב מפורש כשיוצרים מופע של האובייקט GoogleAdsClient:

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'
  # ... 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 מאפשר אימות באמצעות Application Default Credentials‏ (GOOGLE_ADS_USE_APPLICATION_DEFAULT_CREDENTIALS). נתמך בגרסה 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; נוסף כ-gaada בגרסה 37.0.0 ושמו שונה ל-ads_assistant בגרסה 39.0.0).
  • ‫http_proxy: URI אופציונלי של proxy ל-HTTP או ל-HTTPS ‏(GOOGLE_ADS_RUBY_HTTP_PROXY).
  • ‫api_endpoint: החלפה אופציונלית של נקודת הקצה ב-API ‏ (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: מציינים כתובת URL של שרת proxy ל-HTTP.