web-dev-qa-db-fra.com

Log4j différents appenders pour différents niveaux de journalisation à l'aide du fichier de propriétés

Puisque la documentation officielle de log4j est un lien brisé , et que le guide de démarrage n’aide pas, j'aimerais savoir comment utiliser deux ajouteurs avec des niveaux de journalisation différents pour le même enregistreur, en utilisant plutôt un fichier .properties d'un .xml un.

Par exemple, comme ceci:

log4j.rootLogger=debug,  APPENDER_FILE, APPENDER_STDOUT

Je me connecte avec deux ajouts différents, mais au même niveau de journalisation (DEBUG). Je souhaite utiliser un niveau de journalisation INFO pour APPENDER_STDOUT et un niveau de journalisation DEBUG pour APPENDER_FILE.

Ma question est similaire à this , mais contrairement à cette question, j’utilise le fichier log4j.properties, pas le fichier xml.

27
alessiop86

Vous devez définir le logger sur le plus détaillé des deux niveaux (DEBUG), puis définir un seuil sur le appender pour lui indiquer de ne montrer que les messages INFO et supérieurs

log4j.appender.APPENDER_STDOUT.Threshold=INFO
48
Ian Roberts

De plus, si vous souhaitez spécifier l'appender au niveau du package, vous pouvez utiliser:

log4j.logger.[package]=[Level], [Appender]

Exemple:

log4j.logger.org.Apache.cxf=INFO, MyAppender

Pour plus de détails, veuillez consulter: https://stackoverflow.com/a/19795886/679240

1
Haroldo_OK