Code Exceptions in Splunk AppDynamics

Code exceptions are a common cause of business transaction errors. The Exceptions tab in theErrorspage shows an aggregated view of the exceptions across all transactions. For purposes of this view, Splunk AppDynamics considers the following types of incidents to be exceptions:

  • Any exception logged with a severity of Error or Fatal (using Log4j, java.util.logging, Log4Net/NLog, or another supported logger). This applies even if the exception occurs outside the context of a business transaction, in which case the exception type is specified asApplication Server.
  • HTTP errors that do not occur in the context of a Business Transaction.
  • Error page redirects.

Exceptions that are thrown and handled within a business transaction are not captured by Splunk AppDynamics and do not appear in the Exceptions tab.

When troubleshooting errors, notice that the number of business transaction errors does not necessarily correspond to the number of exceptions in a given time frame. A single transaction that counts as an error transaction can correspond to multiple exceptions. For example, as the transaction traverses tiers, it can generate an exception on each one. Troubleshooting an error typically involves finding the exception closest to the originating point of the error.

If a stack trace for the exception is available, you can access it from the Exception tab in the Controller UI. A stack trace is available for a given exception if the exception was passed in the log call. For example, a logging call in the form of logger.log(Level.ERROR, String msg, Throwable e) would include a stack trace, whereas a call in the form of logger.log(Level.ERROR, String msg) would not.