sentry 2.2.0 copy "sentry: ^2.2.0" to clipboard
sentry: ^2.2.0 copied to clipboard

outdated

A pure Dart Sentry.io client.

Sentry.io client for Dart #

Build Status

Use this library in your Dart programs (Flutter, command-line and (TBD) AngularDart) to report errors thrown by your program to https://sentry.io error tracking service.

Versions #

>=0.0.0 <2.0.0 is the range of versions compatible with Dart 1.

>=2.0.0 <3.0.0 is the range of versions compatible with Dart 2.

Usage #

Sign up for a Sentry.io account and get a DSN at http://sentry.io.

Add sentry dependency to your pubspec.yaml:

dependencies:
  sentry: any

In your Dart code, import package:sentry/sentry.dart and create a SentryClient using the DSN issued by Sentry.io:

import 'package:sentry/sentry.dart';

final SentryClient sentry = new SentryClient(dsn: YOUR_DSN);

In an exception handler, call captureException():

main() async {
  try {
    doSomethingThatMightThrowAnError();
  } catch(error, stackTrace) {
    await sentry.captureException(
      exception: error,
      stackTrace: stackTrace,
    );
  }
}

Tips for catching errors #

  • use a try/catch block
  • create a Zone with an error handler, e.g. using runZoned
  • in Flutter, use FlutterError.onError
  • use Isolate.current.addErrorListener to capture uncaught errors in the root zone

Found a bug? #

Please file it at https://github.com/flutter/flutter/issues/new