Ich verwende log4j2
in meinem Projekt mit -Dlog4j.configurationFile=src/main/resources/log4j2.xml
.
Meine Anwendungsprotokollierer schreiben Protokolle in dem Format, das in der Konfigurationsdatei angegeben ist.Wie log4j config auf die Abhängigkeiten des Projekts eingestellt wird?
Ich habe andere Abhängigkeiten (sparkjava
, hazelcast
, mongodb
, sql2o
etc ..), die auch Protokolle schreiben, aber in anderem Format. Ich möchte, dass diese Logger meine log4j
Konfigurationsdatei verwenden.
Wie kann ich es tun?
EDIT:
Meine log4j2.xml
wie folgt aussieht:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
<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="trace">
<AppenderRef ref="Console"/>
</Root>
</Loggers>
</Configuration>
Wie ich es verstehe, sollte jede Protokollmeldung an die root
Logger beziehen sein und somit nach meiner log4j2.xml
Konfigurationsdatei formatiert werden.
können Sie uns Ihre log4j2.xml, log4j2 Support-APIs geben: SLF4J, Commons Logging, Log4j-1.x und java.util.logging. Also werden diese Logs von log4j2 gesammelt. Sie sagen anderes Format, aber in den gleichen Appenders als log4j2? –
@Mr_Thorynque Ich habe die Datei hinzugefügt – itaied