日志记录

日志记录是使用 SLF4J 配置的,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 实用程序日志记录

  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 仅从文件系统读取,因此请勿复制到 resources 目录。

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