이 라이브러리는 다양한 방식으로 Google Ads API와의 상호작용을 기록하도록 구성할 수 있습니다. 자세한 요청 및 응답과 더 간결한 요약 메시지를 로깅할 수 있습니다. 이 설정은 클라이언트 라이브러리 구성에서 관리합니다. 다음은 사용 가능한 다양한 유형의 구성 옵션에 관한 세부정보입니다.
이 라이브러리는 Python의 기본 제공 로깅 프레임워크를 사용하며 기본적으로 stderr
에 로깅합니다. 포함된 경우 구성에 정의된 logging
객체가 dict
로 logging.config.dictConfig
에 직접 전달됩니다.
클라이언트를 초기화하기 전에 로깅 구성을 설정하여 로깅을 프로그래매틱 방식으로 구성할 수도 있습니다. 다음 예를 사용하여 클라이언트 로거 인스턴스를 가져와 구성할 수 있습니다.
import logging
logging.basicConfig(level=logging.INFO, format='[%(asctime)s - %(levelname)s] %(message).5000s')
logging.getLogger('google.ads.googleads.client').setLevel(logging.INFO)
클라이언트 로거는 클라이언트가 초기화될 때 구성됩니다. 이후 로깅 구성 변경사항은 무시됩니다. YAML 파일에서 로깅 구성을 프로그래매틱 방식으로 재정의하려면 클라이언트가 초기화되기 전에 위의 줄을 호출해야 합니다.
로그 수준
클라이언트는 몇 가지 수준에서 로그를 생성하며 아래의 일부 또는 전체를 보도록 구성을 설정할 수 있습니다.
수준 | 요청 완료 | 요청 실패 |
---|---|---|
DEBUG |
전체 요청 및 응답 객체가 JSON으로 포함된 자세한 로그입니다. | 전체 요청 및 예외 객체가 JSON으로 포함된 세부 로그입니다. |
INFO |
특정 요청 및 응답 필드가 포함된 간단한 요약입니다. | 전체 요청 및 예외 객체가 JSON으로 포함된 세부 로그입니다. |
WARNING |
없음 | 특정 요청 정보, 예외 상태, 메시지가 포함된 간단한 요약입니다. |
Python 로깅 프레임워크는 구성된 수준보다 심각도가 낮은 로그 메시지를 무시하므로 WARNING
로 설정하면 요청 실패와 관련된 간결한 메시지만 표시되지만 DEBUG
로 설정하면 위 표에 가능한 모든 유형의 로그가 표시됩니다.
파일에 로깅
로그 메시지를 파일로 쉽게 파이프할 수 있습니다. 예를 들어 get_campaigns
예시를 실행할 때 다음과 같이 할 수 있습니다.
python get_campaigns.py -c $CLIENT_ID 2> example.log
로깅 인터셉터
Python 클라이언트 라이브러리는 gRPC 개입자를 사용하여 요청 및 응답 세부정보에 액세스하고 로깅합니다. 맞춤 로직으로 gRPC 인터셉터를 만들어 자체 맞춤 로깅을 설정할 수 있습니다. 맞춤 로깅 인터셉터에 관한 자세한 내용과 예시는 로깅 가이드를 참고하세요.