Logging konfigurieren

Die Protokollierung in der Java-Clientbibliothek wird mit SLF4J konfiguriert, einer generischen Protokollierungsfassade für Java, mit der Logs an viele verschiedene Protokollierungsimplementierungen wie Log4j 2, Logback oder java.util.logging (JUL) weitergeleitet werden können. Wir stellen Beispielkonfigurationsdateien für Log4j 2 und JUL zur Verfügung.

Protokolllayout und ‑funktionen

Anfragen werden mit einer einzeiligen Zusammenfassung und dem vollständigen Anfrage- und Antworttext sowie den Headern protokolliert.

Logtyp Log name Erfolgsstufe Fehlerstufe
ZUSAMMENFASSUNG com.google.ads.googleads.lib.request.summary INFO WARN
DETAILS com.google.ads.googleads.lib.request.detail FEHLER BEHEBEN INFO

Kürzen von Detailprotokollen

Die detaillierten Logs werden standardmäßig gekürzt, um die Erstellung großer Logs zu vermeiden. Wenn Sie die Länge ändern möchten, bei der Logs gekürzt werden, legen Sie die JVM-Eigenschaft -Dapi.googleads.maxLogMessageLength=<number> fest. Wenn Sie -1 festlegen, wird das Kürzen von Logs deaktiviert.

Log4j 2

  1. Fügen Sie eine Abhängigkeit von der Bibliothek log4j-slf4j2-impl hinzu und ersetzen Sie 2.x.y durch die Version von Log4j 2, die Sie in Ihrem Projekt verwenden:

    <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-slf4j2-impl</artifactId>
      <version>2.x.y</version>
    </dependency>
    
  2. Optional: Erstellen Sie eine log4j2.xml-Konfigurationsdatei im Verzeichnis „resources“ (z. B. src/main/resources in Maven). Log4j 2 lädt die Konfigurationsdatei aus dem Klassenpfad und nicht aus dem Arbeitsverzeichnis. Erstellen Sie sie daher in einem Verzeichnis für Ressourcen.

  3. Führen Sie die Anwendung mit -Dlog4j.configurationFile=<CONFIG_FILE_PATH> aus. Sie können CONFIG_FILE_PATH=googleads-logging/log4j2.xml angeben, um die Standardkonfigurationsdatei zu verwenden, die in der Clientbibliothek enthalten ist.

Log4j 1.2 (Legacy)

  1. Fügen Sie eine Abhängigkeit von der Bibliothek slf4j-log4j12 hinzu und ersetzen Sie 1.x.y durch die Version von Log4j 1.2, die Sie in Ihrem Projekt verwenden:

    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-log4j12</artifactId>
      <version>1.x.y</version>
    </dependency>
    
  2. Optional: Erstellen Sie eine Konfigurationsdatei im Verzeichnis „resources“ Ihres Projekts, z. B. src/main/resources in Maven. Log4j 1.2 lädt die Konfigurationsdatei aus dem Klassenpfad und nicht aus dem Arbeitsverzeichnis. Kopieren Sie sie daher in ein Verzeichnis für Ressourcen.

  3. Führen Sie die Anwendung mit -Dlog4j.configuration=<CONFIG_FILE_PATH> aus. Sie können CONFIG_FILE_PATH=googleads-logging/log4j.properties angeben, um die Standardkonfigurationsdatei zu verwenden, die in der Clientbibliothek enthalten ist.

Java Util Logging

  1. Fügen Sie eine Abhängigkeit von der Bibliothek slf4j-jdk14 hinzu und ersetzen Sie 2.x.y durch die in Ihrem Projekt verwendete SLF4J-Version:

    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-jdk14</artifactId>
      <version>2.x.y</version>
    </dependency>
    
  2. Erstellen Sie eine JUL-Konfigurationsdatei im Dateisystem in einem Pfad, der von Ihrer Anwendung gelesen werden kann (z. B. ./jdk-logger.properties). Eine Vorlage finden Sie unter google-ads/src/main/resources/googleads-logging/jdk-logger.properties. JUL liest nur aus dem Dateisystem. Kopieren Sie die Datei daher nicht nur in das Verzeichnis für Klassenpfadressourcen.

  3. Führen Sie die Anwendung mit -Djava.util.logging.config.file=./jdk-logger.properties aus.