Advanced Usage
Requirements
- For the usage of the Dart SDK, the minimal required Dart SDK version is
2.8.0
and Flutter SDK version is1.17.0
Automatic Breadcrumbs
To track automatic Breadcrumbs for HTTP requests, you can add a Sentry wrapper that does it automatically for you.
This is only possible if you are using the http.Client class from the http library.
The SentryHttpClient
can be used as a standalone client like this:
Copied
import 'package:http/http.dart' as http;
import 'package:sentry/sentry.dart';
final client = SentryHttpClient();
try {
final url = 'https://example.com/whatsit/create';
final response = await client.post(url, body: {
'name': 'doodle',
'color': 'blue',
});
print('Response body: ${response.body}');
} finally {
client.close();
}
The SentryHttpClient
can also be used as a wrapper for your own HTTP Client
:
Copied
import 'package:http/http.dart' as http;
import 'package:sentry/sentry.dart';
final myClient = http.Client();
final client = SentryHttpClient(client: myClient);
try {
final url = 'https://example.com/whatsit/create';
final response = await client.post(url, body: {
'name': 'doodle',
'color': 'blue',
});
print('Response body: ${response.body}');
} finally {
client.close();
}
Tips for catching errors
- Use a
try/catch
block - Use a
catchError
block forFutures
Isolate
errors on thecurrent
Isolate which is the equivalent of a main/UI thread, e.g. usingIsolate.current.addErrorListener
, are captured automatically (Only for non-Web Apps).- For your own
Isolates
, add anErrorListener
and callSentry.captureException
You can edit this page on GitHub.