Как заставить Mule 3 отображать полные следы стека - PullRequest
4 голосов
/ 24 октября 2011

У меня было исключение, когда я получил этот сокращенный след:

Root Exception stack trace:
java.sql.SQLException: Invalid column name
    at oracle.jdbc.driver.OracleStatement.getColumnIndex(OracleStatement.java:3677)
    at oracle.jdbc.driver.OracleResultSetImpl.findColumn(OracleResultSetImpl.java:2749)
    at oracle.jdbc.driver.OracleResultSet.getString(OracleResultSet.java:494)
    + 3 more (set debug level logging or '-Dmule.verbose.exceptions=true' for everything)

Затем я поместил это в "log4j.properties", и это не помогло:

log4j.logger.org.mule=DEBUG

Я также потерпел неудачу со вторым предложением (и я подозреваю, что я делаю это неправильно):

$ ./mule -Dmule.verbose.exceptions=true

Ответы [ 3 ]

8 голосов
/ 25 октября 2011

Как объяснено здесь , аргументы передаются из командной строки в Mule следующим образом:

$ ./mule -M-Dmule.verbose.exceptions=true

т.е.с префиксом -M .

1 голос
/ 23 июня 2017

По умолчанию Mule отфильтровывает некоторые внутренние ссылки на классы из стековых трасс, чтобы получить более читаемый вывод. Для правильного понимания вы можете перейти по данной ссылке. https://docs.mulesoft.com/mule-user-guide/v/3.7/configuring-mule-stacktraces

0 голосов
/ 23 апреля 2015

Я знаю, что вопрос больше связан с настройкой подробного описания исключений в Mule Studio, но если вы хотите настроить это непосредственно на сервере Mule ESB, вы можете добавить wrapper.java.additional.n entries в оболочку . Файл conf в каталоге / conf в каталоге установки Mule. Этот wrapper.conf содержит все параметры, отправленные Mule во время запуска:

т.е. wrapper.java.additional.6=-Dmule.verbose.exceptions=true

Просто убедитесь, что индекс параметра wrapper.java.additional. не используется для другого.

Чтобы передать аргументы в командной строке, добавив ключ -M.

т.е. MULE_HOME/bin/mule -M-Dmule.verbose.exceptions=true

Для развертывания Anypoint Studio:

Щелкните правой кнопкой мыши Корень проекта в Studio, выберите «Запуск от имени» -> «Запуск конфигурации» -> вкладка «Аргумент», добавьте аргументы в окне аргументов виртуальной машины,

i.e.  -XX:PermSize=128M -XX:MaxPermSize=256M -Dmule.verbose.exceptions=true

Для запуска приложения Mule as Maven:

Вы можете передать аргумент командной строки как

i.e. mvn package -Dmule.verbose.exceptions=true

Для развертывания в Cloudhub:

Вы можете передать аргумент командной строки, добавив их в качестве Свойства в разделе Развертывание -> Настройки -> Свойства

...