구성

구성은 Config 클래스를 사용하여 실행됩니다. 구성 파일을 작성하거나, 생성 시 값을 지정하거나, 환경 변수에서 값을 로드하는 등 다양한 방법으로 이 클래스에 액세스할 수 있습니다.

구성 파일

클라이언트를 인스턴스화할 때 사용할 google_ads_config.rb 파일을 지정할 수 있습니다.

인스턴스화할 때 인수를 사용하지 않는 경우:

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

그러면 라이브러리는 GOOGLE_ADS_CONFIGURATION_FILE_PATH 환경 변수에 지정된 위치를 찾습니다. 이 변수가 설정되지 않은 경우 라이브러리는 HOME 디렉터리에서 파일을 찾습니다.

또는 경로를 지정할 수 있습니다.

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

이 경우 클라이언트는 해당 파일 경로에서 파일을 찾습니다.

이 파일을 생성하는 가장 쉬운 방법은 GitHub 저장소에서 google_ads_config.rb를 복사하고 갱신 토큰, 클라이언트 ID, 클라이언트 보안 비밀번호를 포함하도록 수정하는 것입니다.

동적 구성

라이브러리를 인스턴스화할 때 또는 그 이후에 구성을 동적으로 설정할 수 있습니다.

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

인스턴스화한 후에도 구성을 수정할 수 있습니다.

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

구성 필드

Config 객체는 다음 필드를 지원합니다.

일반 필드:

  • refresh_token: OAuth 갱신 토큰입니다.
  • client_id: OAuth 클라이언트 ID입니다.
  • client_secret: OAuth 클라이언트 보안 비밀번호
  • developer_token: API에 액세스하는 데 사용되는 개발자 토큰입니다.
  • login_customer_id: login-customer-id 문서를 참조하세요.

로깅 필드. 자세한 내용은 로깅 가이드를 참조하세요.

  • log_level: 로깅할 최소 로그 수준 메시지입니다. 예를 들어 'DEBUG'를 지정하면 모든 로그 메시지가 표시되고 'INFO'를 지정하면 DEBUG 메시지는 제외되지만 그 외 모든 메시지는 표시됩니다.
  • log_target: 로깅할 위치입니다(예: STDERR).
  • logger: 맞춤 로거를 지정합니다. 이 속성을 지정하면 log_levellog_target가 모두 재정의됩니다.

환경 변수

환경 변수를 사용하여 클라이언트 라이브러리를 구성할 수 있습니다. 기본적으로 로드되지 않으며, 로드하려면 클라이언트를 인스턴스화한 후 추가 호출이 필요합니다. 모든 언어에서 지원하는 환경 변수의 전체 목록을 참조하세요.

환경 변수를 Config에 로드하려면 load_environment_config를 호출합니다.

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

이 메서드가 호출될 때마다 환경 변수의 현재 상태가 Config에 이미 있는 모든 항목을 덮어씁니다. 이러한 메커니즘을 통해 예를 들어 기본 구성을 사용하지만 환경 변수를 사용하여 특정 값을 재정의하거나 환경 변수로 완전히 구성할 수 있습니다.

모든 라이브러리에서 지원하는 환경 변수 외에도 Ruby 라이브러리에는 두 가지 추가 변수가 있습니다.

  • GOOGLE_ADS_RUBY_LOG_LEVEL: 위의 log_level에 따름
  • GOOGLE_ADS_RUBY_HTTP_PROXY: HTTP 프록시를 지정합니다.