구성 파일은 Config 클래스를 사용하여 관리됩니다. 구성 파일을 사용하거나, 생성 시 값을 동적으로 지정하거나, 환경 변수에서 값을 로드하여 클라이언트를 구성할 수 있습니다.
구성 파일
클라이언트를 인스턴스화할 때 사용할 google_ads_config.rb 파일을 지정할 수 있습니다.
GoogleAdsClient 객체를 인스턴스화할 때 인수를 전달하지 않으면 라이브러리가 다음 순서로 구성 파일을 검색합니다.
GOOGLE_ADS_CONFIGURATION_FILE_PATH환경 변수에 지정된 경로.HOME디렉터리 (~/google_ads_config.rb)에 있는google_ads_config.rb라는 파일.
또는 GoogleAdsClient 객체를 인스턴스화할 때 명시적 경로를 전달할 수 있습니다.
client = Google::Ads::GoogleAds::GoogleAdsClient.new('path/to/file.rb')
이 파일을 생성하려면 google_ads_config.rb을(를)
GitHub 저장소에서 복사하고 갱신 토큰, 클라이언트 ID,
클라이언트 보안 비밀번호를 포함하도록 수정합니다.
동적 구성
라이브러리를 인스턴스화할 때 구성을 동적으로 설정할 수 있습니다.
client = Google::Ads::GoogleAds::GoogleAdsClient.new do |config|
config.client_id = 'INSERT_CLIENT_ID_HERE'
# ... additional configuration
end
인스턴스화 후 구성을 수정할 수도 있습니다 (초기화 중에 로드된 설정을 재정의함).
client.configure do |config|
config.login_customer_id = 'INSERT_LOGIN_CUSTOMER_ID_HERE'
# ... additional configuration
end
구성 필드
Config 객체는 다음 필드를 지원합니다.
일반 필드:
refresh_token: OAuth 갱신 토큰 (GOOGLE_ADS_REFRESH_TOKEN).client_id: OAuth 클라이언트 ID (GOOGLE_ADS_CLIENT_ID).client_secret: OAuth 클라이언트 보안 비밀번호 (GOOGLE_ADS_CLIENT_SECRET).keyfile: 서비스 계정 JSON 키 파일의 경로(GOOGLE_ADS_JSON_KEY_FILE_PATH).impersonate: 도메인 전체 위임을 사용하는 서비스 계정을 사용할 때 가장할 이메일 주소 (GOOGLE_ADS_IMPERSONATED_EMAIL).use_application_default_credentials: 애플리케이션 기본 사용자 인증 정보를 사용하여 인증하려면true로 설정합니다(GOOGLE_ADS_USE_APPLICATION_DEFAULT_CREDENTIALS).google-ads-googleadsv36.1.0 이상에서 지원됩니다.authentication:Proc(updater_proc), 키 파일 경로 또는Hash또는GRPC::Core::Channel/GRPC::Core::ChannelCredentials와 같은 맞춤 인증 객체.client_id,client_secret,refresh_token,keyfile을 재정의합니다.login_customer_id: login-customer-id 문서 (GOOGLE_ADS_LOGIN_CUSTOMER_ID)를 참고하세요.linked_customer_id: 연결된 고객 ID(GOOGLE_ADS_LINKED_CUSTOMER_ID).ads_assistant: Google Ads API 어시스턴트 헤더의 선택적 식별자 (GOOGLE_ADS_ASSISTANT; v37.0.0에서gaada로 추가되었으며 v39.0.0에서ads_assistant로 이름이 변경됨).http_proxy: 선택적 HTTP 또는 HTTPS 프록시 URI(GOOGLE_ADS_RUBY_HTTP_PROXY).api_endpoint: 선택적 API 엔드포인트 재정의 (GOOGLE_ADS_ENDPOINT).treat_deprecation_warnings_as_errors: 지원 중단된 라이브러리 코드가 호출될 때Warning#warn을 호출하는 대신 예외를 발생시킵니다 (기본값은false).warn_on_all_deprecations: 호출 사이트당 한 번이 아니라 모든 호출에서 지원 중단 경고를 표시합니다 (기본값은false).
로그 필드 (로깅 가이드 참고):
log_level: 로깅할 최소 로그 수준 메시지입니다. 예를 들어'DEBUG'를 지정하면 모든 메시지가 로깅되고'INFO'를 지정하면DEBUG메시지가 제외되고 다른 모든 메시지가 표시됩니다.log_target:STDERR또는 경로와 같이 로깅할 위치입니다.logger: 자체 맞춤 로거를 지정합니다. 이를 지정하면log_level과log_target이 모두 재정의됩니다.
환경 변수
환경 변수를 사용하여 클라이언트 라이브러리를 구성할 수 있습니다. 기본적으로 로드되지 않으며 로드하려면 클라이언트를 인스턴스화한 후 명시적 호출이 필요합니다. 표준 환경 변수의 전체 목록을 참고하세요.
환경 변수를 Config에 로드하려면 load_environment_config를 호출합니다.
client = Google::Ads::GoogleAds::GoogleAdsClient.new
client.load_environment_config
load_environment_config가 호출될 때마다 정의된 환경 변수는 Config에 이미 있는 해당 값을 덮어씁니다 (설정되지 않은 환경 변수는 기존 구성 값을 변경하지 않음). 이 메커니즘을 사용하면 기본 구성 파일을 유지하고 환경 변수를 사용하여 특정 값을 재정의하거나 환경 변수로 클라이언트를 완전히 구성할 수 있습니다.
표준 환경 변수 외에도 Ruby 라이브러리는 두 개의 추가 변수를 지원합니다.
GOOGLE_ADS_RUBY_LOG_LEVEL: 앞에서 설명한log_level과 동일합니다.GOOGLE_ADS_RUBY_HTTP_PROXY: HTTP 프록시 URL을 지정합니다.