Contact Us 1-800-596-4880

Configuring Mule Stacktraces

Mule Runtime Engine versions 3.5, 3.6, and 3.7 reached End of Life on or before January 25, 2020. For more information, contact your Customer Success Manager to determine how you can migrate to the latest Mule version.

By default Mule will filter out some internal class references from stacktraces to produce a more readable output. This behavior can be controlled one of three ways:

  • command-line arguments

  • setting properties in Mule Studio

  • using JMX

Command-Line Arguments

Two command-line properties enable you to control this behavior using -M-DpropertyName:

  • mule.stacktrace.full - when present, Mule will not filter stacktraces. Intended for Mule developers only, end user would probably never need to enable this.

  • mule.stacktrace.filter - a comma-separated list of packages and/or classes to remove from the stacktraces (matched via string.startsWith() )

Setting Properties in Mule Studio

In Studio, you can set the same properties specified above to instruct Mule to provide either unfiltered stacktraces or to configure a particular filter of packages or classes that should be removed. To adjust these settings, open your mule-project.xml file and define environment variables to specify the behavior you want. In the example below, the mule.stacktrace.full* property is set to *true.

Studio-config-stacktrace

Using JMX

The Configuration MBean now exposes two new options.

  • FullStackTrace - same as above

  • StackTraceFilter - same as above

These settings are shared between apps even though each app has its own Configuration MBean. That means that modifying it in one app will affect others.