Konfiguracja jest przeprowadzana za pomocą klasy Config
. Dostęp do tej klasy można uzyskać na wiele sposobów, takich jak utworzenie pliku konfiguracji, określenie wartości przy tworzeniu lub wczytanie wartości ze zmiennych środowiskowych.
Plik konfiguracji
Możesz określić plik google_ads_config.rb
, którego chcesz użyć do utworzenia instancji klienta.
Jeśli przy tworzeniu instancji nie używasz żadnych argumentów:
client = Google::Ads::GoogleAds::GoogleAdsClient.new
to biblioteka będzie znajdować się w lokalizacji określonej w zmiennej środowiskowej GOOGLE_ADS_CONFIGURATION_FILE_PATH
. Jeśli ta zmienna nie zostanie ustawiona, plik pojawi się w katalogu HOME
w bibliotece.
Możesz też określić ścieżkę:
client = Google::Ads::GoogleAds::GoogleAdsClient.new("path/to/file.rb")
W takim przypadku klient będzie szukał pliku w danej ścieżce.
Najprostszym sposobem na wygenerowanie tego pliku jest skopiowanie google_ads_config.rb
z repozytorium GitHub i zmodyfikowanie go w celu dodania tokena odświeżania, identyfikatora klienta i tajnego klucza klienta.
Konfiguracja dynamiczna
Konfigurację możesz skonfigurować dynamicznie podczas tworzenia biblioteki, a nawet po:
client = Google::Ads::GoogleAds::GoogleAdsClient.new do |config|
config.client_id = 'INSERT_CLIENT_ID_HERE'
# ... more configuration
end
Możesz nawet zmienić konfigurację po utworzeniu instancji:
client.configure do |config|
config.login_customer_id = 'INSERT_LOGIN_CUSTOMER_ID_HERE'
# ... more configuration
end
Pola konfiguracji
Obiekt Config
obsługuje te pola.
Pola ogólne:
refresh_token
: token odświeżania protokołu OAuth.client_id
: Twój identyfikator klienta OAuth.client_secret
: Twój tajny klucz klienta OAuth.developer_token
: token programisty umożliwiający dostęp do interfejsu API.login_customer_id
: zapoznaj się z dokumentacją dotyczącą identyfikatora klienta.
Dzienniki logowania. Szczegółowe informacje znajdziesz w przewodniku logowania.
log_level
: minimalna liczba wiadomości na poziomie logu, które chcesz rejestrować. Na przykład określenie'DEBUG'
zapewni wyświetlanie wszystkich komunikatów logu, a określenie'INFO'
wykluczy wiadomości DEBUG, ale wszystkie inne wiadomości.log_target
: miejsce, do którego chcesz się zalogować, np.STDERR
.logger
: własny rejestrator. Określenie tego ustawienia spowoduje zastąpienie zarówno ciągulog_level
, jak ilog_target
.
Zmienne środowiskowe
Biblioteka klienta możesz skonfigurować za pomocą zmiennych środowiskowych. Nie są one domyślnie wczytywane i po wczytaniu instancji klienta klient musi wywołać dodatkowe wywołanie. Zobacz pełną listę zmiennych środowiskowych obsługiwanych przez wszystkie języki.
Aby wczytać zmienne środowiskowe do Config
, wywołaj load_environment_config
:
client = Google::Ads::GoogleAds::GoogleAdsClient.new
client.load_environment_config
Przy każdym wywołaniu bieżący stan zmiennych środowiskowych zastąpi wszystkie elementy, które znajdują się już w elemencie Config
. Dzięki temu mechanizmowi możesz na przykład mieć konfigurację domyślną, ale zastąpić konkretne wartości przy użyciu zmiennych środowiskowych lub całkowicie skonfigurować zmienne środowiskowe.
Oprócz zmiennych środowiskowych obsługiwanych przez wszystkie biblioteki, biblioteka Ruby ma 2 dodatkowe zmienne:
GOOGLE_ADS_RUBY_LOG_LEVEL
: jak w powyższym przykładzie (log_level
).GOOGLE_ADS_RUBY_HTTP_PROXY
: określ serwer proxy HTTP.