Logging

Logging wird mit SLF4J konfiguriert, einer generischen Logging-Bibliothek für Java, mit der Logs an viele verschiedene Logging-Implementierungen weitergeleitet werden können. Wir stellen Konfigurationsdateien für log4j 1.2/2 und Java Util Logging (JUL) zur Verfügung.

Layout und Funktionalität der Protokollierung

Anfragen werden mit einer einzeiligen Zusammenfassung sowie dem vollständigen Anfrage-/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 des Detaillogs

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

Log4j 2

  1. Fügen Sie eine Abhängigkeit für die Bibliothek log4j-slf4j-impl hinzu. Ersetzen Sie dabei 2.x.y durch die Version von Log4j 2, die Sie in Ihrem Projekt verwenden.

    <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-slf4j-impl</artifactId>
      <version>2.x.y</version>
    </dependency>
    
  2. (Optional) Erstellen Sie eine Konfigurationsdatei in Ihrem Ressourcenverzeichnis, z. B. in Maven: src/main/resources. Log4j 2 lädt seine Konfigurationsdatei aus dem Klassenpfad, nicht aus dem Arbeitsverzeichnis. Erstellen Sie deshalb unbedingt ein Ressourcenverzeichnis.

  3. Führen Sie die Anwendung aus und geben Sie dabei -Dlog4j.configurationFile=<CONFIG_FILE_PATH> an. Sie können CONFIG_FILE_PATH=googleads-logging/log4j2.xml angeben, um die Standardkonfigurationsdatei zu verwenden, die in den Clientbibliotheken enthalten ist.

Log4j 1.2 (Legacy)

  1. Fügen Sie eine Abhängigkeit für die Bibliothek slf4j-log4j12 hinzu und ersetzen Sie dabei 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. In Maven lautet der Pfad beispielsweise src/main/resources. Log4j 1.2 lädt die Konfigurationsdatei aus dem Klassenpfad, nicht aus dem Arbeitsverzeichnis. Kopieren Sie daher unbedingt in ein Ressourcenverzeichnis.

  3. Führen Sie die Anwendung aus und geben Sie dabei -Dlog4j.configuration=<CONFIG_FILE_PATH> an. Sie können CONFIG_FILE_PATH=googleads-logging/log4j.properties angeben, um die Standardkonfigurationsdatei zu verwenden, die in den Clientbibliotheken enthalten ist.

Java-Dienstprogramm-Logging

  1. Fügen Sie der Bibliothek slf4j-jdk14 eine Abhängigkeit hinzu.

    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-jdk14</artifactId>
      <version>1.7.25</version>
    </dependency>
    
  2. Erstellen Sie im Dateisystem eine JUL-Konfigurationsdatei in einem für Ihre Anwendung lesbaren Pfad (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, also kopieren Sie es nicht in das Ressourcenverzeichnis.

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