Cấu hình

Cấu hình được hoàn tất bằng cách sử dụng một 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 giá trị khi tạo hoặc tải giá trị từ các 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 sử dụng đối số khi tạo thực thể:

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

thì thư viện sẽ tìm ở vị trí được chỉ định trong biến môi trường GOOGLE_ADS_CONFIGURATION_FILE_PATH. Nếu biến đó không được đặt, thì thư viện sẽ tìm tệp trong thư mục HOME của bạn.

Ngoài ra, bạn có thể chỉ định một đường dẫn:

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

trong trường hợp đó, ứng dụng sẽ tìm tệp tại đường dẫn tệp đó.

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 và sửa đổi tệp đó để bao gồm mã làm mới, mã ứng dụng khách và mật khẩu ứng dụng khách.

Cấu hình động

Bạn có thể thiết lập cấu hình một cách linh động khi tạo thực thể cho 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

Thậm chí bạn có thể sửa đổi cấu hình sau khi tạo bản sao:

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

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: Mật khẩu ứng dụng khách OAuth của bạn.
  • developer_token: Mã của nhà phát triển để truy cập API.
  • login_customer_id: Hãy xem tài liệu vềlogin-customer-id.

Trường ghi nhật ký. Xem hướng dẫn ghi nhật ký để biết đầy đủ thông tin chi tiết.

  • log_level: Thông điệp cấp độ nhật ký tối thiểu mà bạn muốn được ghi lại. Ví dụ: việc chỉ định 'DEBUG' sẽ đảm bảo bạn nhìn thấy tất cả thông báo nhật ký và việc chỉ định 'INFO' sẽ loại trừ các thông báo DEBUG nhưng sẽ hiển thị tất cả các thông báo khác.
  • log_target: Nơi bạn muốn đăng nhập, 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 thuộc tính này sẽ ghi đè cả log_levellog_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. Theo mặc định, các trình xử lý này không được tải và cần có lệnh gọi bổ sung sau khi tạo thực thể ứng dụng để tải. Hãy 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 lệnh này đượ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 nội dung đã có trong Config. Với cơ chế này, bạn có thể dùng 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 hoàn toàn có thể định cấu hình bằng các biến môi trường.

Ngoài các biến môi trường được tất cả thư viện hỗ trợ, thư viện Ruby còn có thêm 2 biến:

  • GOOGLE_ADS_RUBY_LOG_LEVEL: Như log_level ở trên.
  • GOOGLE_ADS_RUBY_HTTP_PROXY: Chỉ định proxy HTTP.