Konfiguracja

Konfiguracją zarządza się za pomocą klasy Config. Klienta możesz skonfigurować za pomocą pliku konfiguracji, określając wartości dynamicznie podczas tworzenia lub wczytując wartości ze zmiennych środowiskowych.

Plik konfiguracji

Podczas tworzenia instancji klienta możesz określić plik google_ads_config.rb, którego chcesz użyć.

Jeśli podczas tworzenia instancji obiektu GoogleAdsClient nie przekażesz żadnych argumentów, biblioteka wyszuka plik konfiguracji w tej kolejności:

  1. Ścieżka określona w zmiennej środowiskowej GOOGLE_ADS_CONFIGURATION_FILE_PATH.
  2. Plik o nazwie google_ads_config.rb w katalogu HOME (~/google_ads_config.rb).

Możesz też przekazać jawną ścieżkę podczas tworzenia instancji obiektu GoogleAdsClient:

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

Aby wygenerować ten plik, skopiuj plik google_ads_config.rb z repozytorium GitHub i zmodyfikuj go, aby zawierał token odświeżania, identyfikator klienta i tajny klucz klienta.

Konfiguracja dynamiczna

Konfigurację możesz skonfigurować dynamicznie podczas tworzenia instancji biblioteki:

client = Google::Ads::GoogleAds::GoogleAdsClient.new do |config|
  config.client_id = 'INSERT_CLIENT_ID_HERE'
  # ... additional configuration
end

Konfigurację możesz też zmienić po utworzeniu instancji (co spowoduje zastąpienie ustawień wczytanych podczas inicjowania):

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

Pola konfiguracji

Obiekt Config obsługuje te pola.

Pola ogólne:

  • refresh_token: Twój token odświeżania OAuth (GOOGLE_ADS_REFRESH_TOKEN).
  • client_id: identyfikator klienta OAuth (GOOGLE_ADS_CLIENT_ID).
  • client_secret: tajny klucz klienta OAuth (GOOGLE_ADS_CLIENT_SECRET).
  • keyfile: ścieżka do pliku klucza JSON konta usługi (GOOGLE_ADS_JSON_KEY_FILE_PATH).
  • impersonate: adres e-mail, pod który należy się podszyć podczas korzystania z konta usługi z przekazywaniem dostępu w całej domenie (GOOGLE_ADS_IMPERSONATED_EMAIL).
  • use_application_default_credentials: ustaw na true, aby uwierzytelniać za pomocą domyślnego uwierzytelniania aplikacji (GOOGLE_ADS_USE_APPLICATION_DEFAULT_CREDENTIALS). Obsługiwane w google-ads-googleads w wersji 36.1.0 i nowszych.
  • authentication: niestandardowy obiekt uwierzytelniania, taki jak Proc (updater_proc), ścieżka pliku klucza lub Hash, albo GRPC::Core::Channel / GRPC::Core::ChannelCredentials. Zastępuje client_id, client_secret, refresh_token i keyfile.
  • login_customer_id: zapoznaj się z dokumentacją dotyczącą identyfikatora klienta logowania (GOOGLE_ADS_LOGIN_CUSTOMER_ID).
  • linked_customer_id: identyfikator klienta (GOOGLE_ADS_LINKED_CUSTOMER_ID).
  • ads_assistant: opcjonalny identyfikator nagłówka asystenta interfejsu Google Ads API (GOOGLE_ADS_ASSISTANT; dodany jako gaada w wersji 37.0.0 i przemianowany na ads_assistant w wersji 39.0.0).
  • http_proxy: opcjonalny identyfikator URI serwera proxy HTTP lub HTTPS (GOOGLE_ADS_RUBY_HTTP_PROXY).
  • api_endpoint: opcjonalne zastąpienie punktu końcowego interfejsu API (GOOGLE_ADS_ENDPOINT).
  • treat_deprecation_warnings_as_errors: zgłoś wyjątek zamiast wywoływać Warning#warn, gdy wywoływany jest przestarzały kod biblioteki (domyślnie false).
  • warn_on_all_deprecations: wyświetlaj ostrzeżenie o wycofaniu przy każdym wywołaniu, a nie raz na wywołanie (domyślnie false).

Pola logu (szczegółowe informacje znajdziesz w przewodniku po logowaniu):

  • log_level: minimalny poziom logowania wiadomości, które chcesz rejestrować. Na przykład określenie 'DEBUG' powoduje rejestrowanie wszystkich wiadomości, a określenie 'INFO' wyklucza wiadomości DEBUG, wyświetlając wszystkie pozostałe.
  • log_target: miejsce, w którym chcesz się zalogować, np. STDERR lub ścieżka.
  • logger: określ własny niestandardowy logger. Określenie tej opcji zastępuje zarówno log_level, jak i log_target.

Zmienne środowiskowe

Bibliotekę klienta możesz skonfigurować za pomocą zmiennych środowiskowych. Nie są one wczytywane domyślnie i wymagają jawnego wywołania po utworzeniu instancji klienta. Zobacz pełną listę standardowych zmiennych środowiskowych.

Aby wczytać zmienne środowiskowe do Config, wywołaj load_environment_config:

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

Za każdym razem, gdy wywoływana jest funkcja load_environment_config, wszystkie zdefiniowane zmienne środowiskowe zastępują odpowiednie wartości, które są już obecne w Config (nieustawione zmienne środowiskowe pozostawiają istniejące wartości konfiguracji bez zmian). Dzięki temu mechanizmowi możesz zachować domyślny plik konfiguracji i zastąpić określone wartości za pomocą zmiennych środowiskowych lub całkowicie skonfigurować klienta za pomocą zmiennych środowiskowych.

Oprócz standardowych zmiennych środowiskowych biblioteka Ruby obsługuje 2 dodatkowe zmienne:

  • GOOGLE_ADS_RUBY_LOG_LEVEL: odpowiednik log_level, jak wyjaśniono wcześniej.
  • GOOGLE_ADS_RUBY_HTTP_PROXY: podaj adres URL serwera proxy HTTP.