Yapılandırma, Config sınıfı kullanılarak yapılır. Bu sınıfa, yapılandırma dosyası yazma, oluşturma sırasında değer belirtme veya değerleri ortam değişkenlerinden yükleme gibi çeşitli şekillerde erişebilirsiniz.
Yapılandırma dosyası
İstemciyi oluştururken kullanılacak bir google_ads_config.rb dosyası belirtebilirsiniz.
Bir GoogleAdsClient nesnesini oluştururken herhangi bir bağımsız değişken kullanmazsanız kitaplık, GOOGLE_ADS_CONFIGURATION_FILE_PATH ortam değişkeninde belirtilen konuma bakar. Bu değişken ayarlanmamışsa kitaplık, dosya için HOME dizininize bakar.
Alternatif olarak, GoogleAdsClient
nesnesini aşağıdaki gibi oluştururken bir yol belirtebilirsiniz. Bu durumda istemci, dosyayı bu yolda arar.
client = Google::Ads::GoogleAds::GoogleAdsClient.new("path/to/file.rb")
Bu dosyayı oluşturmanın en kolay yolu, GitHub deposundan google_ads_config.rb öğesini kopyalayıp yenileme jetonunuzu, istemci kimliğinizi ve istemci gizli anahtarınızı içerecek şekilde değiştirmektir.
Dinamik yapılandırma
Yapılandırmayı kitaplığı oluştururken dinamik olarak veya daha sonra ayarlayabilirsiniz:
client = Google::Ads::GoogleAds::GoogleAdsClient.new do |config|
config.client_id = 'INSERT_CLIENT_ID_HERE' # ... more configuration
end
Yapılandırmayı örnek oluşturulduktan sonra bile değiştirebilirsiniz:
client.configure do |config|
config.login_customer_id = 'INSERT_LOGIN_CUSTOMER_ID_HERE'
# ... more configuration
end
Yapılandırma alanları
Config nesnesi aşağıdaki alanları destekler.
Genel alanlar:
refresh_token: OAuth yenileme jetonunuz.client_id: OAuth istemci kimliğiniz.client_secret: OAuth istemci gizli anahtarınız.login_customer_id: login-customer-id dokümanlarına bakın.
Günlük alanları. Tüm ayrıntılar için günlüğe kaydetme kılavuzuna bakın.
log_level: Günlüğe kaydedilmesini istediğiniz minimum günlük düzeyi iletileri. Örneğin,'DEBUG'belirtmek tüm günlük mesajlarını görmenizi sağlar.'INFO'belirtmek ise DEBUG mesajlarını hariç tutar ancak diğer tüm mesajları gösterir.log_target:STDERRgibi oturum açmak istediğiniz yer.logger: Kendi özel günlükçünüzü belirtin. Bu değerin belirtilmesi hemlog_levelhem delog_targetdeğerini geçersiz kılar.
Ortam değişkenleri
İstemci kitaplığını ortam değişkenlerini kullanarak yapılandırabilirsiniz. Bunlar varsayılan olarak yüklenmez ve yüklenmesi için istemci oluşturulduktan sonra ek bir çağrı yapılması gerekir. Tüm diller tarafından desteklenen ortam değişkenlerinin tam listesini inceleyin.
Ortam değişkenlerini Config öğenize yüklemek için load_environment_config öğesini çağırın:
client = Google::Ads::GoogleAds::GoogleAdsClient.new
client.load_environment_config
Bu işlev her çağrıldığında, ortam değişkenlerinin mevcut durumu Config içinde zaten bulunan her şeyin üzerine yazılır. Bu mekanizma sayesinde, örneğin, varsayılan bir yapılandırmaya sahip olabilir ancak ortam değişkenlerini kullanarak belirli değerleri geçersiz kılabilir veya tamamen ortam değişkenleriyle yapılandırabilirsiniz.
Tüm kitaplıklar tarafından desteklenen ortam değişkenlerine ek olarak Ruby kitaplığında iki ek değişken bulunur:
GOOGLE_ADS_RUBY_LOG_LEVEL: Daha önce açıklandığı gibilog_level.GOOGLE_ADS_RUBY_HTTP_PROXY: Bir HTTP proxy'si belirtin.