Konfiguracja

Konfiguracją zarządza klasa Config. Klienta możesz skonfigurować, używając 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 do użycia.

Jeśli podczas tworzenia instancji obiektu GoogleAdsClient nie przekażesz żadnych argumentów, biblioteka będzie szukać pliku 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 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

Możesz też zmodyfikować konfigurację 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: 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, który ma być używany podczas korzystania z konta usługi z delegowaniem w całej domenie (GOOGLE_ADS_IMPERSONATED_EMAIL).
  • use_application_default_credentials: ustaw na true, aby uwierzytelniać się za pomocą domyślnych danych uwierzytelniających aplikacji (GOOGLE_ADS_USE_APPLICATION_DEFAULT_CREDENTIALS). Obsługiwane w google-ads-googleads w wersji 36.1.0 i nowszej.
  • authentication: niestandardowy obiekt uwierzytelniania, np. Proc (updater_proc), ścieżka do 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ą login-customer-id (GOOGLE_ADS_LOGIN_CUSTOMER_ID).
  • linked_customer_id: połączony 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 zmieniony 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: zamiast wywoływać Warning#warn, zgłoś wyjątek, gdy zostanie wywołany wycofany kod biblioteki (false domyślnie).
  • warn_on_all_deprecations: wyświetlaj ostrzeżenie o wycofaniu przy każdym wywołaniu, a nie tylko raz na miejsce wywołania (false domyślnie).

Pola logów (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 DEBUG wiadomości, ale wyświetla wszystkie inne wiadomości.
  • log_target: miejsce, w którym chcesz rejestrować, np. STDERR lub ścieżka.
  • logger: określ własny niestandardowy rejestrator. 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. Domyślnie nie są one wczytywane i wymagają jawnego wywołania po utworzeniu instancji klienta. Pełną listę standardowych zmiennych środowiskowych znajdziesz tutaj.

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 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ępować określone wartości za pomocą zmiennych środowiskowych lub skonfigurować klienta w całości za pomocą zmiennych środowiskowych.

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

  • GOOGLE_ADS_RUBY_LOG_LEVEL: odpowiednik log_level opisany wcześniej.
  • GOOGLE_ADS_RUBY_HTTP_PROXY: określ adres URL serwera proxy HTTP.