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

ההגדרה מנוהלת באמצעות המחלקה 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.