Syntax
NewRelic.recordHandledException(Exception $exceptionToHandle)NewRelic.recordHandledException(Exception $exceptionToHandle, Map of String, Object $exceptionAttributes)
NewRelic.recordHandledException(Throwable $throwableToHandle)NewRelic.recordHandledException(Throwable $throwableToHandle, Map of String, Object $exceptionAttributes)
Records a handled exception or other throwable type. Optionally takes map with additional attributes showing context.
Requirements
Agent version 5.15.0 or higher.
Description
Use recordHandledException()
within a try{...} catch(){...}
block to help understand how often your application is throwing exceptions, and under what conditions.
Import the New Relic SDK API for Android:
import com.newrelic.agent.android.NewRelic;Record an exception in your app code, and optionally pass in a map of contextual attributes:
NewRelic.recordHandledException(Exception $exceptionToHandle, Map of String, Object $exceptionAttributes);
In addition to associated custom attributes, the events will also have associated session attributes. You can view event data in the mobile monitoring UI in the Crash event trail, or via NRQL.
For general information on using the New Relic Android SDK API, see the usage guide.
Parameters
Parameter | Description |
---|---|
Exception | Required. The exception object that was thrown. |
Map of String,Object | Optional. Map of attributes that give context. |
Return values
Returns true
if the handled exception was recorded successfully, or false
if not.
Examples
Record handled exception on button press
An example of recording a ClassCastException
from within an on-click listener:
public class MainActivity extends Activity { ... coolButton.setOnClickListener(new View.OnClickListener() { Map myMap = new HashMap<>(); @Override public void onClick(View view) { try { myMap.put("Key", "Value"); Integer stringVar = (Integer) myMap.get("Key"); //throws ClassCastException } catch (Exception e) { NewRelic.recordHandledException(e, myMap); } } }); ...}