reportException method Null safety
- Exception exception,
- {ErrorSeverityLevel severityLevel = ErrorSeverityLevel.warning,
- StackTrace? stackTrace}
Reports an Exception
that was caught.
This can be called in catch
blocks to report unexpected exceptions, that
you want to track.
Method might throw Exception.
try {
await jsonDecode("invalid/exception/json");
} on FormatException catch (e) {
await Instrumentation.reportException(e,
severityLevel: ErrorSeverityLevel.warning);
}
Implementation
static Future<void> reportException(Exception exception,
{ErrorSeverityLevel severityLevel = ErrorSeverityLevel.warning,
StackTrace? stackTrace}) async {
try {
final arguments = {
"message": exception.toString(),
"severity": severityLevel.index,
"stackTrace": stackTrace?.toString()
};
await channel.invokeMethod<void>('reportError', arguments);
} on PlatformException catch (e) {
throw Exception(e.details);
}
}