2016-10-11 2 views
2

Je suis en train d'écrire un curation tâche et je voudrais écrire mes propres fichiers journaux (comme: [dspace]/log/myCurationTask.log) à partir de la tâche pour cette question, au lieu de la dspace.log.écriture au propre fichier journal dans la tâche de curation

Comment pourrais-je y parvenir en utilisant autant de procédures DSpace que possible?

+0

Dans le cas où il est utile de savoir, il est possible d'envoyer la sortie à la norme dans une tâche de curation. Malheureusement, cette information n'est pas capturée si vous exécutez la tâche à partir de la file d'attente de tâches de conservation. La solution à votre question pourrait être utile aux autres utilisateurs de DSpace exécutant des tâches de conservation complexes. – terrywb

Répondre

2

Voici le fichier log4j.properties: https://github.com/DSpace/DSpace/blob/dspace-5.6/dspace/config/log4j.properties

Vous pouvez copier la configuration A1 (ou définir votre propre), nommez-A4 et laissez les journaux pour vos packages ou classes spécifiques soient également envoyés à l'A4 appender comme celui-ci

log4j.logger.org.dspace.etc.etc = INFO, A4 
log4j.additivity.org.dspace.etc.etc = false 

la ligne qui spécifie le fichier journal dans le fichier journal A1 est celui-ci: log4j.appender.A1.File=${log.dir}/dspace.log

dans votre classe java vous pouvez envoyer votre texte dans le journal avec ce

import org.apache.log4j.Logger; 

public class SomeClass { 

    /** 
    * log4j logger 
    */ 
    private static final Logger log = Logger.getLogger(SomeClass.class); 

Vous pouvez ensuite utiliser log.info, log.warn, log.error, log.debug ...