Sök…


Anmärkningar

Det här avsnittet ger en översikt över vad log4j2 är och varför en utvecklare kanske vill använda den.

Den bör också nämna alla stora ämnen inom log4j2 och länka till relaterade ämnen. Eftersom dokumentationen för log4j2 är ny kan du behöva skapa initialversioner av relaterade ämnen.

Varför inte Log4j 1.x?

Log4j 1.x är livslängd den 5 augusti 2015. [1] [2]. Apache Log4j 2 är efterträdaren till Log4j 1.x; tillhandahåller bindningar för projekt som är beroende av Log4j 1.x, men vill uppgradera till Log4j 2. Förutom kompatibilitet med Log4j 1.x tillhandahålls kompatibilitet för SLF4J, Commons Logging och java.util.logging API: er.

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

Installation eller installation

Detta skulle vara en grundläggande installation där vi skickar alla loggmeddelanden till konsolen och till en loggfil.

Låt oss börja med biblioteken. Kommer att använda maven för det:

    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-api</artifactId>
        <version>2.8.2</version>
    </dependency>
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>2.8.2</version>
    </dependency>

Därefter skriver vi log4j2.properties (jag använder en egenskapsfil i det här fallet). Vi lägger den i kontextvägen, i maven ska den vara i resursmappen (src / main / resurser i de flesta fall)

name=PropertiesConfig
property.filename = logs
appenders = console, file

appender.console.type = Console
appender.console.name = STDOUT
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = [%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n

appender.file.type = File
appender.file.name = LOGFILE
appender.file.fileName=${filename}/propertieslogs.log
appender.file.layout.type=PatternLayout
appender.file.layout.pattern=[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n

loggers=file
logger.file.name=com.es.form.studio
logger.file.level = debug
logger.file.appenderRefs = file
logger.file.appenderRef.file.ref = LOGFILE

rootLogger.level = debug
rootLogger.appenderRefs = stdout
rootLogger.appenderRef.stdout.ref = STDOUT

För att använda det här exemplet måste du ändra logger.file.name = com.es.form.studio så att det riktar sig mot det paket du väljer. Om du inte gör det kommer filen inte att visa några loggar.



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow