配置日志记录

Java 客户端库中的日志记录通过 SLF4J 进行配置,SLF4J 是一种通用的 Java 日志记录门面,可将日志定向到许多不同的日志记录实现,例如 Log4j 2、Logback 或 java.util.logging (JUL)。我们提供了 Log4j 2 和 JUL 的示例配置文件。

日志布局和功能

系统会记录请求,并提供单行摘要以及完整的请求和响应正文和标头。

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

详细日志截断

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

Log4j 2

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

    <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-slf4j2-impl</artifactId>
      <version>2.x.y</version>
    </dependency>
    
  2. (可选)在资源目录(例如 Maven 中的 src/main/resources)中创建 log4j2.xml 配置文件。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 库的依赖项,并将 2.x.y 替换为您在项目中使用的 SLF4J 版本:

    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-jdk14</artifactId>
      <version>2.x.y</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。