Ich versuche, ‚anders‘ Appen basierend auf verschiedenen Ebenen zu schaffen, aber bisher konnte ich nicht einen Weg zu isolieren Protokolliergrade ....Erstellen von unterschiedlichen Protokollen basieren auf Protokollebene in log4j
<category name="com.sample" additivity="false">
<priority value="INFO" />
<appender-ref ref="AllAsync"/>
<appender-ref ref="ConsoleAppender"/>
</category>
finden Ich brauche einen Weg, um nur INFO-priorisierte Logs landen zu können, die angehängt werden. Da die Protokollierung der INFO-Ebene auch DEBUG-markierte Logger verwendet, hilft mir das nicht.
Eine andere Sache ist für ‚gleiche‘ Paket, das ich nicht anders Protokollierung Appender definieren könnte:
<category name="com.sample" additivity="false">
<priority value="INFO" />
<appender-ref ref="AllAsync"/>
<appender-ref ref="ConsoleAppender"/>
</category>
<category name="com.sample" additivity="false">
<priority value="DEBUG" />
<appender-ref ref="AllAsync"/>
<appender-ref ref="ConsoleAppender"/>
</category>
Hier habe ich den Fehler so etwas wie ich immer:
log4j:ERROR Attempted to append to closed appender named [AllAsync].
log4j:ERROR Attempted to append to closed appender named [ConsoleAppender].
log4j:ERROR Attempted to append to closed appender named [ConsoleAppender].
log4j:ERROR Attempted to append to closed appender named [ConsoleAppender].
Sie können Schwellenwert verwenden, um zu verhindern, dass etwas niedriger als Level X in einer Protokolldatei ist, aber ich glaube nicht, dass es eine Möglichkeit gibt, zu verhindern, dass die Protokollierung in der Protokolldatei höher ist. –