log4j
log4j registra la personalizzazione
Ricerca…
File di configurazione
Configurazione
Il file di configurazione di Log4j può trovarsi in uno di questi formati:
- JSON
- YAML
- proprietà (file di testo)
- XML
Scoperta della configurazione
- Log4j ispezionerà la proprietà di sistema
log4j.configurationFilee, se impostato, tenterà di caricare la configurazione. - Se non viene impostata alcuna proprietà di sistema, log4j cercherà
log4j2-test.propertiesnel classpath. - Se non viene trovato alcun file di questo tipo, log4j cercherà
log4j2-test.yamlolog4j2-test.ymlnel classpath. - Se non viene trovato alcun file di questo tipo, log4j cercherà
log4j2-test.jsonolog4j2-test.jsnnel classpath. - Se non viene trovato alcun file di questo tipo, logj4 cercherà
log4j2-test.xmlnel classpath. - Se non è possibile localizzare un file di test, log4j cercherà
log4j2.propertiessul classpath. - Se non è possibile localizzare un file delle proprietà, log4j cercherà
log4j2.yamlolog4j2.ymlsul classpath. - Se non è possibile localizzare un file YAML, log4j cercherà
log4j2.jsonolog4j2.jsnsul classpath. - Se non è possibile localizzare un file JSON, log4j tenterà di individuare
log4j2.xmlsul classpath. - Se non è possibile localizzare alcun file di configurazione, verrà utilizzato DefaultConfiguration. Ciò causerà l'uscita della registrazione per andare alla console.
Configurazione XML
Esempio XML
La configurazione seguente configura due appendici (output di registro). I primi registri sull'output di sistema standard (console) e gli altri registri su file. In questo esempio, la posizione del file può essere impostata staticamente nella configurazione ( file appender) o dinamicamente tramite la funzione di filtro <Property name="APPENDER"> ( <Property name="APPENDER"> ). Il file di accesso verrà imballato di giorno. Il Conversion Pattern riga di registro è impostato come variabile.
<?xml version="1.0" encoding="UTF-8"?>
<!-- 'status' sets log level for parsing configuration file itself -->
<Configuration status="INFO">
<Properties>
<!-- Sets variable PID, if it's not present in log4j context will take value as below: -->
<Property name="PID">????</Property>
<!-- Sets variable 'LOG_PATTERN', defining how log line will look like -->
<Property name="LOG_PATTERN">%clr{%d{yyyy-MM-dd HH:mm:ss.SSS}}{faint} %clr{%5p} %clr{${sys:PID}}{magenta} %clr{%X{usr}}{green} %clr{---}{faint}%clr{[%15.15t]}{faint} %clr{%-40.40c{1.}:%l}{cyan} %clr{:}{faint} %m%n%wEx</Property>
<!-- LOG_DIR may be set by maven filtering feature: -->
<Property name="LOG_DIR">@logging.path@</Property>
<!-- APPENDER may be set by maven filtering feature, to set 'console' or 'file' appender: -->
<Property name="APPENDER">@logging.default.appender@</Property>
</Properties>
<Appenders>
<!-- Sets console output: -->
<Console name="console" target="SYSTEM_OUT">
<PatternLayout pattern="${LOG_PATTERN}"/>
</Console>
<!-- Sets output to file, and names it 'file' -->
<RollingRandomAccessFile append="true" fileName="${LOG_DIR}/log4j2.log"
filePattern = "${LOG_DIR}/log4j2.%d{yyyy-MM-dd}.nr%i.log.gz" name="file">
<PatternLayout>
<Pattern>${LOG_PATTERN}</Pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy />
</Policies>
</RollingRandomAccessFile>
</Appenders>
<Loggers>
<!-- Sets debug for Class 'com.example.package.Clazz', and attaches to file 'file' -->
<Logger name="com.example.package.Clazz" level="debug">
<AppenderRef ref="file"/>
</Logger>
<!-- Sets 'info' for package 'org.springframework' -->
<Logger name="org.springframework" level="info" />
<Root level="WARN">
<AppenderRef ref="${APPENDER}"/>
</Root>
</Loggers>
</Configuration>
Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow