Konfiguracja

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

Plik konfiguracji

Możesz określić plik google_ads_config.rb, który będzie używany podczas tworzenia instancji klienta.

Jeśli podczas tworzenia instancji obiektu GoogleAdsClient nie przekażesz żadnych argumentów, biblioteka będzie szukać pliku konfiguracyjnego 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 ustawić 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 zastąpi ustawienia wczytane 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órego należy używać 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ć 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 nowszych.
  • authentication: niestandardowy obiekt uwierzytelniania, np. Proc(updater_proc), ścieżka do pliku klucza lub Hash albo GRPC::Core::Channel / GRPC::Core::ChannelCredentials. Zastępuje wartości 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: 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: zgłaszanie wyjątku zamiast wywoływania funkcji Warning#warn w przypadku wywołania kodu biblioteki, który został wycofany (false domyślnie).
  • warn_on_all_deprecations: wyświetlaj ostrzeżenie o wycofaniu przy każdym wywołaniu, a nie tylko raz w przypadku każdego miejsca wywołania (false domyślnie).

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

  • log_level: minimalny poziom logowania komunikatów, które chcesz rejestrować. Na przykład podanie 'DEBUG' powoduje rejestrowanie wszystkich wiadomości, a podanie 'INFO' wyklucza wiadomości DEBUG, ale wyświetla wszystkie inne wiadomości.
  • log_target: miejsce, w którym chcesz rejestrować dane, np. STDERR lub ścieżka.
  • logger: Określ własny rejestrator niestandardowy. Określenie tej wartości 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 konfiguracyjny 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, jak wyjaśniono wcześniej.
  • GOOGLE_ADS_RUBY_HTTP_PROXY: podaj adres URL serwera proxy HTTP.