Suche…


Bemerkungen

In diesem Abschnitt erhalten Sie einen Überblick darüber, was log4j ist und warum ein Entwickler es verwenden möchte.

Es sollte auch alle großen Themen in log4j erwähnen und auf die verwandten Themen verweisen. Da die Dokumentation für log4j neu ist, müssen Sie möglicherweise erste Versionen dieser verwandten Themen erstellen.

Lebenszyklus von Log4j

Log4j 1.x ist am 5. August 2015 zu Ende. [1] [2]. Apache Log4j 2 ist der Nachfolger von Log4j 1.x.

1 https://logging.apache.org/log4j/1.2/
[2] https://blogs.apache.org/foundation/entry/apache_logging_services_project_announces

Versionen

Ausführung Beachten Veröffentlichungsdatum
2.8 letzte Version 2017-01-21
2,7 2016-10-02
2.6.2 2016-07-09
2.4 Für Log4j 2.4 und höher ist Java 7 erforderlich 2015-09-20
2.3.6 letzte Version, die Java unterstützt 6 2015-05-15
2,0 erste stabile Version von Zweig 2.x. Bricht die API-Kompatibilität. Verwenden Sie bridge: log4j-1.2-api.jar 2014-07-01
1.2.17 EOF log4j-Zweig 1.x 2015-08-05

Installation und Einrichtung

Installation

Die Installation von Log4j2 ist so einfach wie das Einfügen von log4j2 jar in den Klassenpfad der Anwendung. Möglicherweise möchten Sie jedoch die Protokollausgabe über eine zusätzliche Konfigurationsdatei anpassen

Aufbau

Maven

Um log4j zu einem Projekt in maven hinzuzufügen, fügen Sie seine Abhängigkeit hinzu: Fügen Sie in pom.xml die folgende Abhängigkeit hinzu:

<dependencies>
  <dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-api</artifactId>
    <version>${log4j2.version}</version>
  </dependency>
  <dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>
    <version>${log4j2.version}</version>
  </dependency>
</dependencies>

Springboot mit Maven

Spring-Boot ist ein häufig verwendetes Framework für Webanwendungen. Die Funktionen unterstützen die automatische Konfiguration für viele Funktionen, einschließlich der Protokollierungsfassade wie log4j2. Um log4j2 zu Ihrem Spring-Boot-Projekt hinzuzufügen, stellen Sie sicher, dass Sie die Standardfassade für die Protokollierung ausschließen: Commons-Protokollierung. Log4j wird verwendet, wenn nur die Fassade auf Klassenpfad protokolliert wird.

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
        <!-- exclude spring-boot java commons logging in favour of log4j2 -->
        <exclusions>
            <exclusion>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-logging</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <!-- add log4j2 to spring-boot: -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-log4j2</artifactId>
    </dependency>

Beachten Sie, dass es im obigen Snippet keine Version gibt. Dies liegt daran, dass das Projekt die Version vom übergeordneten Element erbt. Stellen Sie sicher, dass Sie auch von Spring-Boot-Starter-Parent erben, indem Sie Folgendes hinzufügen:

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.3.3.RELEASE</version>
</parent>

Efeu

Fügen Sie in ivy.xml folgende Abhängigkeit hinzu:

<dependencies>
  <dependency org="org.apache.logging.log4j" name="log4j-api" rev="${log4j2.version}" />
  <dependency org="org.apache.logging.log4j" name="log4j-core" rev="${log4j2.version}" />
</dependencies>

gradle

In Ihrer .gradle-Datei:

dependencies {
  compile group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.6.2'
  compile group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.6.2'
}


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow