Logging konfigurieren

Die Protokollierung in der Java-Clientbibliothek wird mit SLF4J konfiguriert, einer generischen Logging-Fassade für Java, mit der Logs an viele verschiedene Logging-Implementierungen 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.

Layout und Funktionen des Protokolls

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

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

Kürzung 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 in Ihrem Ressourcenverzeichnis (z. B. src/main/resources in Maven). Log4j 2 lädt seine Konfigurationsdatei aus dem Klassenpfad und nicht aus dem Arbeitsverzeichnis. Erstellen Sie sie daher in einem Ressourcenverzeichnis.

  3. Führen Sie die Anwendung aus und geben Sie -Dlog4j.configurationFile=<CONFIG_FILE_PATH> an. 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 (alt)

  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 Ressourcenverzeichnis 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 Ressourcenverzeichnis.

  3. Führen Sie die Anwendung aus und geben Sie -Dlog4j.configuration=<CONFIG_FILE_PATH> an. 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 slf4j-jdk14-Bibliothek 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 also nicht nur in das Ressourcenverzeichnis des Klassenpfads.

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