2016-12-01 28 views
-1

標題說這一切...Mulesoft/Cloudhub - 如何從Java類獲得輸出以顯示在日誌中?

我有一個Mulesoft應用程序部署到cloudhub(但問題是相同的本地/本地運行)。我的應用程序有一個Java Invoke組件,它在我的Java類中調用一個方法。

該方法包含輸出語句,如System.out和System.err。如果我在Anypoint Studio中運行我的應用程序,該輸出將按照預期在控制檯中顯示出來......但它不會顯示在日誌文件中(本地或在cloudhub上)。

如何從我的Java類獲得輸出以顯示在日誌文件中?

回答

1

這是預期...的System.out不是在日誌打印不應該在PROD環境中使用...
你需要在你的文件夾src/main/resource使用log4j2.xml,需要在Java類中使用org.apache.logging.log4j

一個例子: -

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"; 
    } 
} 

更多參考: - https://logging.apache.org/log4j/2.x/manual/configuration.html
對於Cloudhub自定義日誌的appender: - https://docs.mulesoft.com/runtime-manager/custom-log-appender

+0

感謝Anirban,我完全忘了這是被用於日誌生成的Log4j。 – Topher

相關問題