2017-07-14 5 views
1

Ich bin dabei, einen Logger zu erstellen, der sich gleichzeitig in einer Rolling-Datei und in meiner Konsole anmeldet. Jeder für sich funktioniert einwandfrei, aber in Kombination funktioniert nur das Rollen. Vielleicht mache ich etwas falsch und log4j2 nicht richtig.log4j2: Mit den Eigenschaften in rollende Datei und stdout loggen

Ich hoffe, dass mir jemand helfen kann.

Meine Eigenschaften Datei ist folgende:

status = Fehler

name = PropertiesConfig

Filter = Schwelle

filter.threshold.type = ThresholdFilter

filter.threshold .level = debug

Appen = Konsole, Walzgut

appender.console.type = Console

appender.console.name = STDOUT

appender.console.layout.type = Pattern

appender.console.layout .pattern =% -4R% -5p [% t]% c -% m% n

appender.rolling.type = RollingFile

appender.rollin g.name = RollingFile

appender.rolling.fileName = mypathtofilehere

appender.rolling.filePattern = CrashDesigner-% d {MM-dd-yy-HH-mm-ss} -% i.log.gz

appender.rolling.layout.type = Pattern

appender.rolling.layout.pattern =% d {yyyy-mM-dD HH: mm: ss}% -5p% C {1}:% L -% m% n

appender.rolling.policies.type = Richtlinien

appender.rolling.policies.size.type = SizeBasedTriggeringPolicy

appender.rolling.policies.size.size = 10MB

appender.rolling.strategy.type = DefaultRolloverStrategy

appender.rolling.strategy .max = 40

WBV = rolling.file

logger.rolling.file.name =

com.myapp

logger.rolling.file.level = debug

logger.rolling.file.additivity = false

logger.rolling.file.appenderRefs = Roll

logger.rolling.file.appenderRef.rolling.ref = RollingFile

rootLogger.level = debug

rootLogger.appenderRefs = stdout

rootLogger.appenderRef.stdout.ref = STDOUT

Antwort

0

Ich sehe hier zwei Möglichkeiten. Entweder

  1. ändern folgende Zeile wahr: logger.rolling.file.additivity = true

    oder

  2. second AppenderRef logger.rolling.file.appenderRef.stdout.ref = STDOUT

Auch sollten Sie entfernen Linien mit .appenderRefs. Es gibt keine solche AppenderRef s Einheit in log4j2.

0

Jeder Logger kann mehr als einen Appender schreiben. Dafür sollte es sich auf all diese Appender beziehen, was mit appenderRefs erreicht werden kann.

logger.rolling.file.appenderRefs = rolling, stdout 

logger.rolling.file.appenderRef.rolling.ref = RollingFile 

logger.rolling.file.appenderRef.stdout.ref = STDOUT 

Dies wird jeden logevent ausgelöst durch Logger 'rolling.file', machen zu Appen STDOUT und RollingFle angehängt werden.

Verwandte Themen