日志记录

日志记录通过 SLF4J(Java 的通用日志记录库)进行配置,该库允许将日志定向到许多不同的日志记录实现。我们为 log4j 1.2/2 和 Java Util Logging (JUL) 提供了配置文件。

日志记录布局和功能

系统会记录请求,其中包含一行摘要以及完整的请求/响应正文和标头。

日志类型 日志名称 成功级别 失败级别
摘要 com.google.ads.googleads.lib.request.summary 信息 WARN
详细信息 com.google.ads.googleads.lib.request.detail DEBUG 信息

详细日志截断

详细日志默认会被截断,以避免创建大型日志。如需更改日志截断长度,请设置 -Dapi.googleads.maxLogMessageLength=<number>。将 -1 设置为停用日志截断。

Log4j 2

  1. 添加对 log4j-slf4j-impl 库的依赖项,并将 2.x.y 替换为项目中使用的 Log4j 2 版本。

    <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-slf4j-impl</artifactId>
      <version>2.x.y</version>
    </dependency>
    
  2. (可选)在资源目录中创建一个配置文件,例如在 Maven 中:src/main/resources。Log4j 2 从类路径(而非工作目录)加载其配置文件,因此请务必在资源目录中创建该文件。

  3. 运行应用,并指定 -Dlog4j.configurationFile=<CONFIG_FILE_PATH>。您可以指定 CONFIG_FILE_PATH=googleads-logging/log4j2.xml 以使用客户端库随附的默认配置文件。

Log4j 1.2(旧版)

  1. 添加对 slf4j-log4j12 库的依赖项,并将 1.x.y 替换为项目中使用的 Log4j 1.2 版本。

    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-log4j12</artifactId>
      <version>1.x.y</version>
    </dependency>
    
  2. (可选)在项目资源目录中创建一个配置文件,例如,在 Maven 中,路径为 src/main/resources。Log4j 1.2 从类路径(而非工作目录)加载其配置文件,因此请务必将其复制到资源目录。

  3. 运行应用,并指定 -Dlog4j.configuration=<CONFIG_FILE_PATH>。 您可以指定 CONFIG_FILE_PATH=googleads-logging/log4j.properties 以使用客户端库随附的默认配置文件。

Java Util Logging

  1. 添加对 slf4j-jdk14 库的依赖项。

    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-jdk14</artifactId>
      <version>1.7.25</version>
    </dependency>
    
  2. 在文件系统上创建一个 JUL 配置文件,该文件位于您的应用可读取的路径中(例如 ./jdk-logger.properties)。您可以在 google-ads/src/main/resources/googleads-logging/jdk-logger.properties 中找到模板。JUL 仅从文件系统读取,因此请勿复制到资源目录。

  3. 运行应用,并指定 -Djava.util.logging.config.file=./jdk-logger.properties