log4j Zelfstudie
Aan de slag met log4j
Zoeken…
Opmerkingen
Deze sectie geeft een overzicht van wat log4j is en waarom een ontwikkelaar het misschien wil gebruiken.
Het moet ook alle grote onderwerpen binnen log4j vermelden en een link naar de gerelateerde onderwerpen bevatten. Aangezien de documentatie voor log4j nieuw is, moet u mogelijk eerste versies van die gerelateerde onderwerpen maken.
Log4j-levenscyclus
Log4j 1.x is aan het einde van de levensduur vanaf 5 augustus 2015. [1] [2]. Apache Log4j 2 is de opvolger van Log4j 1.x.
1 https://logging.apache.org/log4j/1.2/
[2] https://blogs.apache.org/foundation/entry/apache_logging_services_project_announces
versies
| Versie | Merk op | Publicatiedatum |
|---|---|---|
| 2.8 | laatste versie | 2017/01/21 |
| 2.7 | 2016/10/02 | |
| 2.6.2 | 2016/07/09 | |
| 2.4 | Log4j 2.4 en hoger vereist Java 7 | 2015/09/20 |
| 2.3.6 | laatste versie die java ondersteunt 6 | 2015/05/15 |
| 2.0 | eerste stabiele versie van tak 2.x. Verbreekt API-compatibiliteit. Gebruik bridge: log4j-1.2-api.jar | 2014/07/01 |
| 1.2.17 | EOF log4j tak 1.x | 2015/08/05 |
Installatie en instellingen
Installatie
De installatie van Log4j2 is net zo eenvoudig als het log4j2-potje in het klassepad van de toepassing plaatsen. Hoewel u misschien de uitvoer van logboeken wilt aanpassen via een extra configuratiebestand
Configuratie
maven
Om log4j toe te voegen aan het project in maven, voegt u de afhankelijkheid toe: In pom.xml voegt u de volgende afhankelijkheid toe:
<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 met maven
Spring-boot wordt vaak gebruikt voor webtoepassingen. Het biedt ondersteuning voor automatische configuratie voor veel functies, waaronder een loggevel zoals log4j2. Om log4j2 toe te voegen aan uw spring-boot project moet u ervoor zorgen dat u de standaard loggevel uitsluit: commons-logging. Log4j wordt gebruikt als het alleen de gevel op het klassenpad registreert.
<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>
Merk op dat er geen versie in het bovenstaande fragment staat. Dit komt omdat het project de versie van de ouder overneemt. Zorg ervoor dat je ook erveert van spring-boot-starter-ouder, door toe te voegen:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.3.3.RELEASE</version>
</parent>
klimop
Voeg in ivy.xml de volgende afhankelijkheid toe:
<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 uw .gradle-bestand:
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'
}