2016-12-01 2 views
-1

Le titre dit tout ...Mulesoft/Cloudhub - Comment afficher les résultats d'une classe Java dans le journal?

J'ai une application Mulesoft qui est déployée sur cloudhub (mais le problème est le même pour l'exécution locale/sur site). Mon application a un composant Java Invoke qui appelle une méthode dans ma classe Java.

La méthode contient des instructions de sortie, telles que System.out et System.err. Si j'exécute mon application dans Anypoint Studio, cette sortie apparaît dans la console comme prévu ... Mais elle n'apparaît pas dans le fichier journal (localement, ou sur cloudhub).

Comment afficher la sortie de ma classe Java dans le fichier journal?

Répondre

1

Cela devrait ... System.out ne sont pas imprimés dans les journaux ne doivent pas être utilisés dans un environnement de prod ...
Vous devez utiliser log4j2.xml dans votre dossier src/main/resource et besoin d'utiliser org.apache.logging.log4j dans votre classe Java .

Un exemple: -

import org.apache.logging.log4j.LogManager; 
import org.apache.logging.log4j.Logger; 

public class Log4j2Tester { 
    private static final Logger LOG = LogManager.getLogger(Log4j2Tester.class); 

    public String test(String args) { 
     LOG.error("testing ERROR level"); 

     LOG.info("testing INFO level"); 
     LOG.trace("exiting application"); 
     return "Done"; 
    } 
} 

Pour plus ref: - https://logging.apache.org/log4j/2.x/manual/configuration.html
Pour Cloudhub journal personnalisé appender: - https://docs.mulesoft.com/runtime-manager/custom-log-appender

+0

Merci Anirban, je l'ai complètement oublié que Log4j était utilisé pour la production du journal. – Topher