Wat betekent “status” in de Log4j2-configuratie?

Ik ben net klaar met het aanpassen van het log4j2.xml-configuratiebestand en ontdekte iets dat ik niet echt begrijp. Dus wat is <Configuration status="SOME_STATUS_HERE">?

Bijna in alle voorbeelden hier:
http://logging.apache.org/log4j/2.x/ handleiding/configuratie.html
mensen van Apache hebben status toegevoegd aan configuratie.

Dit is bijvoorbeeld de eerste:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN"> <!--status="WARN" - what is this???--> 
 <Appenders>
  <Console name="Console" target="SYSTEM_OUT">
   <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
  </Console>
 </Appenders>
 <Loggers>
  <Root level="error">
   <AppenderRef ref="Console"/>
  </Root>
 </Loggers>
</Configuration>

Antwoord 1, autoriteit 100%

De statuslogger wordt intern gebruikt door log4j2-componenten. Door status="debug"(of “trace”) in de configuratie in te stellen, wordt deze interne logging uitgevoerd naar de opdrachtregel.

Het zal foutopsporingsinformatie afdrukken over welke log4j2-plug-incomponenten zijn geladen (alle configuratie-elementen zijn toegewezen aan log4j2-plug-ins), en meer details, zoals bijvoorbeeld welke appenders en loggers zijn gevonden, welke parameters ze hebben en hoe ze worden gecombineerd.

p>

Dit is handig voor het oplossen van configuratieproblemen.

Vanaf Log4j 2.9 kunt u de systeemeigenschap log4j2.debug(geen waarde vereist) gebruiken om de interne Log4j2-statusregistratie in te schakelen, zelfs voordat het configuratiebestand is geladen. Voorafgaand aan versie 2.9 kan hetzelfde worden bereikt met de systeemeigenschap -Dorg.apache.logging.log4j.simplelog.StatusLogger.level=TRACE.

Other episodes