Enregistreur différente dans la même classe à l'aide de Log4J
Je veux spécifiques messages générés à partir de l'intérieur de la même classe d'être enregistré séparément. Alors, comment puis-je créer 2 types différents de bûcherons dans la même classe. Actuellement, le fichier de Propriétés ressemble
log4j.rootCategory=DEBUG, O
# Stdout
log4j.appender.O=org.apache.log4j.ConsoleAppender
log4j.appender.O.layout=org.apache.log4j.PatternLayout
log4j.appender.O.layout.ConversionPattern=[%d{ISO8601}]%5p%6.6r[%t]%x - %C.%M(%F:%L) - %m%n
# File
log4j.appender.MESSAGE=org.apache.log4j.RollingFileAppender
log4j.appender.MESSAGE.File=target/logs/messages.log
# Control the maximum log file size
log4j.appender.MESSAGE.MaxFileSize=1000KB
# Archive log files (one backup file here)
log4j.appender.MESSAGE.MaxBackupIndex=100
log4j.appender.MESSAGE.layout=org.apache.log4j.PatternLayout
log4j.appender.MESSAGE.layout.ConversionPattern=[%d{ISO8601}]%5p%6.6r[%t]%x - %C.%M (% F:% L) - %m%n
log4j.appender.MESSAGE.
log4j.category.failedMessagesLog=INFO, MESSAGE
Je suis en utilisant la journalisation dans mon code comme: –
/** Enregistreur. */
Logger logger = Logger.getLogger(MyClass.class);
Logger msgLogger = Logger.getLogger("MESSAGE");
Lors d'un test, j'obtiens un fichier journal vide (les messages.journal) créé.
Toutes les suggestions??
OriginalL'auteur Global Dictator | 2010-11-22
Vous devez vous connecter pour publier un commentaire.
"failedMessagesLog" est le fichier java qui appender
(INFO,MESSAGE, MESSAGE1)
est appliquée.Je viens de réutilisés existant
RollingFileAppender
. vous pouvez utiliser n'importe quel autre appender ( comme fileAppender).Vous devez utiliser le bon nom de la Classe
Logger logger = Logger.getLogger(MyClass.class)
doit être modifié pour
private static final Logger log = Logger.getLogger( **failedMessagesLog.class** )
;Assurez-vous d'utiliser log4j de journalisation de l'ie
OriginalL'auteur tejaspillai
Créer deux enregistreurs avec des noms différents. Vous pouvez configurer chaque fois que le nom de la base.
Une façon simple de le faire est d'ajouter un suffixe à vous le nom de la classe. par exemple,
dans votre fichier de propriétés.
Enregistreur de failedMessagelogger = Logger.getLogger(myclass.class);
Pour la création d'un enregistreur de contexte statique essayer: Enregistreur log1 = Logger.getLogger(MyClass.classe.getName()+".log1");
OriginalL'auteur Peter Lawrey