Bạn có thể định cấu hình bằng cách sử dụng lớp Config. Bạn có thể truy cập vào lớp này theo nhiều cách, chẳng hạn như viết tệp cấu hình, chỉ định các giá trị khi tạo hoặc tải các giá trị từ biến môi trường.
Tệp cấu hình
Bạn có thể chỉ định một tệp google_ads_config.rb để sử dụng khi tạo thực thể cho ứng dụng.
Nếu bạn không dùng đối số nào khi tạo một đối tượng GoogleAdsClient, thì thư viện sẽ tìm trong vị trí được chỉ định trong biến môi trường GOOGLE_ADS_CONFIGURATION_FILE_PATH. Nếu bạn không đặt biến đó, thì thư viện sẽ tìm tệp trong thư mục HOME.
Ngoài ra, bạn có thể chỉ định một đường dẫn khi khởi tạo đối tượng GoogleAdsClient như sau. Trong trường hợp này, ứng dụng sẽ tìm kiếm tệp tại đường dẫn đó.
client = Google::Ads::GoogleAds::GoogleAdsClient.new("path/to/file.rb")
Cách dễ nhất để tạo tệp này là sao chép google_ads_config.rb từ kho lưu trữ GitHub rồi sửa đổi để thêm mã làm mới, mã ứng dụng và khoá bí mật ứng dụng.
Cấu hình động
Bạn có thể thiết lập cấu hình một cách linh động khi khởi tạo thư viện hoặc thậm chí sau đó:
client = Google::Ads::GoogleAds::GoogleAdsClient.new do |config|
config.client_id = 'INSERT_CLIENT_ID_HERE' # ... more configuration
end
Bạn thậm chí có thể sửa đổi cấu hình sau khi khởi tạo:
client.configure do |config|
config.login_customer_id = 'INSERT_LOGIN_CUSTOMER_ID_HERE'
# ... more configuration
end
Các trường cấu hình
Đối tượng Config hỗ trợ các trường sau.
Trường chung:
refresh_token: Mã làm mới OAuth của bạn.client_id: Mã ứng dụng OAuth của bạn.client_secret: Khoá bí mật của ứng dụng OAuth.login_customer_id: Xem tài liệu về login-customer-id.
Các trường ghi nhật ký. Hãy xem hướng dẫn ghi nhật ký để biết thông tin chi tiết đầy đủ.
log_level: Thông báo cấp nhật ký tối thiểu mà bạn muốn ghi nhật ký. Ví dụ: việc chỉ định'DEBUG'sẽ đảm bảo bạn thấy tất cả thông điệp nhật ký và việc chỉ định'INFO'sẽ loại trừ thông điệp DEBUG nhưng hiển thị tất cả thông điệp khác.log_target: Nơi bạn muốn ghi nhật ký, chẳng hạn nhưSTDERR.logger: Chỉ định trình ghi nhật ký tuỳ chỉnh của riêng bạn. Việc chỉ định tham số này sẽ ghi đè cảlog_levelvàlog_target.
Biến môi trường
Bạn có thể định cấu hình thư viện ứng dụng bằng các biến môi trường. Chúng không được tải theo mặc định và yêu cầu thêm một lệnh gọi sau khi khởi tạo ứng dụng để tải. Xem danh sách đầy đủ các biến môi trường được tất cả các ngôn ngữ hỗ trợ.
Để tải các biến môi trường vào Config, hãy gọi load_environment_config:
client = Google::Ads::GoogleAds::GoogleAdsClient.new
client.load_environment_config
Mỗi lần được gọi, trạng thái hiện tại của các biến môi trường sẽ ghi đè mọi thứ đã có trong Config. Với cơ chế này, chẳng hạn như bạn có thể có một cấu hình mặc định nhưng ghi đè các giá trị cụ thể bằng cách sử dụng các biến môi trường, hoặc bạn có thể định cấu hình hoàn toàn bằng các biến môi trường.
Ngoài các biến môi trường mà tất cả các thư viện đều hỗ trợ, thư viện Ruby còn có 2 biến bổ sung:
GOOGLE_ADS_RUBY_LOG_LEVEL:log_levelnhư đã giải thích ở phần trước.GOOGLE_ADS_RUBY_HTTP_PROXY: Chỉ định một proxy HTTP.