Konfigurasi

Konfigurasi dikelola menggunakan class Config. Anda dapat mengonfigurasi klien menggunakan file konfigurasi, menentukan nilai secara dinamis saat pembuatan, atau memuat nilai dari variabel lingkungan.

File konfigurasi

Anda dapat menentukan file google_ads_config.rb yang akan digunakan saat membuat instance klien.

Jika Anda tidak meneruskan argumen saat membuat instance objek GoogleAdsClient, pustaka akan menelusuri file konfigurasi dalam urutan berikut:

  1. Jalur yang ditentukan dalam variabel lingkungan GOOGLE_ADS_CONFIGURATION_FILE_PATH.
  2. File bernama google_ads_config.rb di direktori HOME Anda (~/google_ads_config.rb).

Atau, Anda dapat meneruskan jalur eksplisit saat membuat instance objek GoogleAdsClient:

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

Untuk membuat file ini, salin google_ads_config.rb dari repositori GitHub dan ubah untuk menyertakan token refresh, ID klien, dan secret klien Anda.

Konfigurasi dinamis

Anda dapat menyiapkan konfigurasi secara dinamis saat membuat instance pustaka:

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

Anda juga dapat mengubah konfigurasi setelah instansiasi (yang menggantikan setelan yang dimuat selama inisialisasi):

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

Kolom konfigurasi

Objek Config mendukung kolom berikut.

Kolom umum:

  • refresh_token: Token refresh OAuth Anda (GOOGLE_ADS_REFRESH_TOKEN).
  • client_id: ID klien OAuth Anda (GOOGLE_ADS_CLIENT_ID).
  • client_secret: Rahasia klien OAuth Anda (GOOGLE_ADS_CLIENT_SECRET).
  • keyfile: Jalur ke file kunci JSON akun layanan (GOOGLE_ADS_JSON_KEY_FILE_PATH).
  • impersonate: Alamat email yang akan di-impersonate saat menggunakan akun layanan dengan delegasi seluruh domain (GOOGLE_ADS_IMPERSONATED_EMAIL).
  • use_application_default_credentials: Setel ke true untuk melakukan autentikasi menggunakan Kredensial Default Aplikasi (GOOGLE_ADS_USE_APPLICATION_DEFAULT_CREDENTIALS). Didukung di google-ads-googleads v36.1.0 dan yang lebih baru.
  • authentication: Objek autentikasi kustom, seperti Proc (updater_proc), jalur file kunci atau Hash, atau GRPC::Core::Channel / GRPC::Core::ChannelCredentials. Mengganti client_id, client_secret, refresh_token, dan keyfile.
  • login_customer_id: Lihat dokumentasi login-customer-id (GOOGLE_ADS_LOGIN_CUSTOMER_ID).
  • linked_customer_id: ID pelanggan tertaut (GOOGLE_ADS_LINKED_CUSTOMER_ID).
  • ads_assistant: ID opsional untuk header Asisten Google Ads API (GOOGLE_ADS_ASSISTANT; ditambahkan sebagai gaada di v37.0.0 dan diganti namanya menjadi ads_assistant di v39.0.0).
  • http_proxy: URI proxy HTTP atau HTTPS opsional (GOOGLE_ADS_RUBY_HTTP_PROXY).
  • api_endpoint: Penggantian endpoint API opsional (GOOGLE_ADS_ENDPOINT).
  • treat_deprecation_warnings_as_errors: Memunculkan pengecualian, bukan memanggil Warning#warn saat kode library yang tidak digunakan lagi dipanggil (false secara default).
  • warn_on_all_deprecations: Mengeluarkan peringatan penghentian penggunaan pada setiap panggilan, bukan sekali per situs panggilan (false secara default).

Kolom log (lihat panduan logging untuk mengetahui detail selengkapnya):

  • log_level: Pesan level log minimum yang ingin Anda catat. Misalnya, menentukan 'DEBUG' akan mencatat semua pesan, dan menentukan 'INFO' akan mengecualikan pesan DEBUG sekaligus menampilkan semua pesan lainnya.
  • log_target: Tempat Anda ingin mencatat log, seperti STDERR atau jalur.
  • logger: Tentukan logger kustom Anda sendiri. Menentukan opsi ini akan menggantikan log_level dan log_target.

Variabel lingkungan

Anda dapat mengonfigurasi library klien menggunakan variabel lingkungan. Tidak dimuat secara default, dan memerlukan panggilan eksplisit setelah membuat instance klien untuk dimuat. Lihat daftar lengkap variabel lingkungan standar.

Untuk memuat variabel lingkungan ke Config, panggil load_environment_config:

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

Setiap kali load_environment_config dipanggil, variabel lingkungan yang ditentukan akan menggantikan nilai yang sesuai yang sudah ada di Config (variabel lingkungan yang tidak ditetapkan akan membiarkan nilai konfigurasi yang ada tidak berubah). Dengan mekanisme ini, Anda dapat mempertahankan file konfigurasi default dan mengganti nilai tertentu menggunakan variabel lingkungan, atau mengonfigurasi klien sepenuhnya dengan variabel lingkungan.

Selain variabel lingkungan standar, library Ruby mendukung dua variabel tambahan:

  • GOOGLE_ADS_RUBY_LOG_LEVEL: Setara dengan log_level seperti yang dijelaskan sebelumnya.
  • GOOGLE_ADS_RUBY_HTTP_PROXY: Tentukan URL proxy HTTP.