启用日志记录

该库可为 Google Ads API 互动提供多样化的日志记录。您可以捕获:

  • 详细信息:发送到 API 的完整请求和收到的响应。
  • 简洁的摘要:互动内容的概要。

您可以通过以下两种方式控制这些日志记录设置:

  • 客户端库配置:使用库的特定配置选项。
  • 使用 Python 以编程方式:使用 Python 的内置日志记录框架实现更直接的控制。

在初始化 GoogleAdsClient 实例时,系统会自动配置日志记录。例如,当您使用 load_from_storage 方法时,就会发生此初始化步骤。此时,该库将:

将此库用作已安装的软件包时,您需要将其日志记录与应用的日志记录设置集成。具体而言,您必须使用 addHandler 方法将日志记录处理程序添加到库自己的日志记录器实例。此处理程序将决定库的日志消息的目标位置(例如控制台、文件等)。为此,请先检索库的日志记录器实例,如下所示:

import logging

logger = logging.getLogger('google.ads.googleads.client')

检索库的日志记录器后,您可以告诉它在哪里输出日志消息。

  • 将日志发送到控制台:如需在控制台中显示日志消息,您需要添加一个基本处理程序。如需将日志定向到标准输出 (stdout),请按以下步骤操作:

    下面介绍了如何设置一个基本处理程序,以指示日志记录器将日志输出到 stdout

    import sys
    
    # Assuming 'logger' was retrieved as per previous instructions
    logger.addHandler(logging.StreamHandler(sys.stdout))
    

    如果您希望将日志发送到标准错误 (stderr)(通常用于错误消息和警告):

    import sys
    
    # Assuming 'logger' was retrieved as per previous instructions
    logger.addHandler(logging.StreamHandler(sys.stderr))
    
  • 程序化配置其他日志记录设置:有了日志记录器对象后,您还可以使用 Python 的内置 logging 模块程序化更改其他日志记录设置。例如,如需将日志记录级别更改为 DEBUG(这将显示更详细的消息),请执行以下操作:

    logger.setLevel(logging.DEBUG)
    

日志级别

客户端会在几个不同级别生成日志,您可以设置配置以查看以下部分或全部日志:

级别 成功请求 请求失败
DEBUG 详细日志,其中包含 JSON 格式的完整请求和响应对象。 详细日志,其中包含 JSON 格式的完整请求和异常对象。
INFO 包含特定请求和响应字段的简明摘要。 详细日志,其中包含 JSON 格式的完整请求和异常对象。
WARNING 包含具体请求信息、异常状态和消息的简明摘要。

由于 Python 日志记录框架会忽略严重程度低于配置级别的日志消息,因此将其设置为 WARNING 意味着您只会看到与失败请求相关的简洁消息,但将其设置为 DEBUG 意味着您会看到上表中的所有可能类型的日志。

记录到文件

从命令行运行示例脚本(例如 get_campaigns.py)时,通常输出到控制台的所有日志消息都可以重定向(或“管道传输”)到文件。这是操作系统 shell 的功能,而非 Python 库本身的功能。具体方法如下:

如需将标准输出(大多数日志)保存到文件(覆盖该文件),请执行以下操作:

python get_campaigns.py -c $CLIENT_ID > campaign_logs.txt

如需将标准输出附加到文件,请执行以下操作:

python get_campaigns.py -c $CLIENT_ID >> campaign_logs.txt

如需将标准输出和标准错误(对于错误/警告)保存到同一文件,请执行以下操作:

python get_campaigns.py -c $CLIENT_ID > all_logs.txt 2>&1

(或者,在某些新型 shell 中,例如 Bash 4+):

python get_campaigns.py -c $CLIENT_ID &> all_logs.txt

日志记录拦截器

Python 客户端库使用 gRPC 拦截器来访问和记录请求和响应详情。您可以通过使用自定义逻辑创建 gRPC 拦截器来设置自己的自定义日志记录。如需了解详情并查看自定义日志记录拦截器示例,请参阅日志记录指南