sentry_flutter library

A Flutter client for Sentry.io crash reporting.

Classes

Structed data to describe more information pior to the event captured. See Sentry.captureEvent().
Contexts
The context interfaces provide additional context data.
DebugImage
The list of debug images contains all dynamic libraries loaded into the process and their memory addresses. Instruction addresses in the Stack Trace are mapped into the list of debug images in order to retrieve debug files for symbolication. There are two kinds of debug images: Native debug images with types macho, elf, and pe Android debug images with type proguard more details : https://develop.sentry.dev/sdk/event-payloads/debugmeta/
DebugMeta
The debug meta interface carries debug information for processing errors and crash reports.
Dsn
The Data Source Name (DSN) tells the SDK where to send the events
EventProcessor
EventProcessors are callbacks that run for every event. They can either return a new event which in most cases means just adding data or return null in case the event will be dropped and not sent.
FlutterSentryAttachment
Hub
SDK API contract which combines a client and scope management
HubAdapter
Hub adapter to make Integrations testable
Integration<T extends SentryOptions>
Code that provides middlewares, bindings or hooks into certain frameworks or environments, along with code that inserts those bindings and activates them.
ISentrySpan
Represents performance monitoring Span.
IsolateErrorIntegration
NoOp web integration : isolate doesnt' work in browser
LoadReleaseIntegration
An Integration that loads the release version from native apps
Mechanism
Sentry Exception Mechanism The exception mechanism is an optional field residing in the Exception Interface. It carries additional information about the way the exception was created on the target system. This includes general exception values obtained from operating system or runtime APIs, as well as mechanism-specific values.
NoOpSentrySpan
OnErrorIntegration
Integration which captures PlatformDispatcher.onError See:
PlatformChecker
Helper to check in which enviroment the library is running. The envirment checks (release/debug/profile) are mutually exclusive.
PlatformDispatcherWrapper
This class wraps the this as dynamic hack in a type-safe manner. It helps to introduce code, which uses newer features from Flutter without breaking Sentry on older versions of Flutter.
RouteObserverBreadcrumb
This class makes it easier to record breadcrumbs for events of Flutters NavigationObserver by accepting RouteSettings.
RunZonedGuardedIntegration
Integration that runs runner function within runZonedGuarded and capture errors on the runZonedGuarded error handler. See https://api.dart.dev/stable/dart-async/runZonedGuarded.html
Scope
Scope data to be sent with the event
ScopeObserver
SdkInfo
An object describing the system SDK.
SdkVersion
Describes the SDK that is submitting events to Sentry.
Sentry
Sentry SDK main entry point
SentryApp
App context describes the application.
SentryAssetBundle
An AssetBundle which creates automatic performance traces for loading assets.
SentryAttachment
Arbitrary content which gets attached to an event.
SentryBaggageHeader
SentryBrowser
Carries information about the browser or user agent for web-related errors.
SentryClient
Logs crash reports and events to the Sentry.io service.
SentryCulture
Culture Context describes certain properties of the culture in which the software is used.
SentryDevice
This describes the device that caused the event.
SentryEnvelope
Class representation of Envelope file.
SentryEnvelopeItem
Item holding header information and JSON encoded data.
SentryEvent
An event to be reported to Sentry.io.
SentryException
The Exception Interface specifies an exception or error that occurred in a program.
SentryFlutterOptions
This class adds options which are only availble in a Flutter environment. Note that some of these options require native Sentry integration, which is not available on all platforms.
SentryGeo
Geographical location of the end user or device.
SentryGpu
GPU context describes the GPU of the device.
SentryHttpClient
A http-package compatible HTTP client.
SentryId
Hexadecimal string representing a uuid4 value. The length is exactly 32 characters. Dashes are not allowed. Has to be lowercase.
SentryLevel
Severity of the logged Event.
SentryMeasurement
SentryMessage
The Message Interface carries a log message that describes an event or error. Optionally, it can carry a format string and structured parameters. This can help to group similar messages into the same issue. example of a serialized message : { "message": { "message": "My raw message with interpreted strings like %s", "params": "this" } }
SentryNavigatorObserver
This is a navigation observer to record navigational breadcrumbs. For now it only records navigation events and no gestures.
SentryOperatingSystem
Describes the operating system on which the event was created.
SentryOptions
Sentry SDK options
SentryPackage
A SentryPackage part of the Sdk.
SentryRequest
The Request interface contains information on a HTTP request related to the event. In client SDKs, this can be an outgoing request, or the request that rendered the current web page. On server SDKs, this could be the incoming web request that is being handled.
SentryResponse
The response interface contains information on a HTTP request related to the event. This is an experimental feature. It might be removed at any time.
SentryRuntime
Describes a runtime in more detail.
SentrySamplingContext
Context used by TracesSamplerCallback to determine if transaction is going to be sampled.
SentryScreenshotWidget
You can add screenshots of child to crash reports by adding this widget. Ideally you are adding it around your app widget like in the following example.
SentrySpan
SentrySpanContext
SentryStackFrame
Frames belong to a StackTrace It should contain at least a filename, function or instruction_addr
SentryStackTrace
Stacktrace holds information about the frames of the stack.
SentryStatusCode
SentryThread
The Threads Interface specifies threads that were running at the time an event happened. These threads can also contain stack traces. See https://develop.sentry.dev/sdk/event-payloads/threads/
SentryTraceContext
SentryTraceContextHeader
SentryTraceHeader
Represents HTTP header "sentry-trace".
SentryTracesSamplingDecision
SentryTransaction
SentryTransactionContext
SentryTransactionInfo
SentryUser
Describes the current user associated with the application, such as the currently signed in user.
SentryUserFeedback
SentryUserInteractionWidget
Enables the Auto instrumentation for user interaction tracing. It starts a transaction and finishes after the timeout. It adds a breadcrumb as well.
SpanId
The length is exactly 16 characters. Dashes are not allowed. Has to be lowercase.
SpanStatus
The Span statuses
Transport
A transport is in charge of sending the event/envelope either via http or caching in the disk.

Enums

MaxRequestBodySize
Describes the size of http request bodies which should be added to an event
MaxResponseBodySize
Describes the size of http response bodies which should be added to an event This enum might be removed at any time.
SentryMeasurementUnit
The unit of measurement of a metric value. Units augment metric values by giving them a magnitude and semantics. Units and their precisions are uniquely represented by a string identifier.
SentryOrientation
If a device is on portrait or landscape mode
SentryTransactionNameSource

Mixins

SentryEventLike<T>
A SentryEventLike mixin that is extended by SentryEvent and SentryTransaction
SentryFlutter
Sentry Flutter SDK main entry point

Properties

sentryScreenshotWidgetGlobalKey GlobalKey<State<StatefulWidget>>
Key which is used to identify the RepaintBoundary
final

Functions

addBaggageHeader(ISentrySpan span, Map<String, dynamic> headers, {SentryLogger? logger}) → void
addSentryTraceHeader(ISentrySpan span, Map<String, dynamic> headers) → void
containsTracePropagationTarget(List<String> tracePropagationTargets, String url) bool
dartLogger(SentryLevel level, String message, {String? logger, Object? exception, StackTrace? stackTrace}) → void
A Logger that prints out the level and message
handleIsolateError(Hub hub, SentryOptions options, dynamic error) Future<void>
isValidSampleRate(double? sampleRate) bool
noOpLogger(SentryLevel level, String message, {String? logger, Object? exception, StackTrace? stackTrace}) → void
A NoOp logger that does nothing

Typedefs

AdditionalInfoExtractor = Map<String, dynamic>? Function(RouteSettings? from, RouteSettings? to)
AppRunner = FutureOr<void> Function()
Runs a callback inside of the runZonedGuarded method, useful for running your runApp(MyApp())
BeforeBreadcrumbCallback = Breadcrumb? Function(Breadcrumb? breadcrumb, {dynamic hint})
This function is called with an SDK specific breadcrumb object before the breadcrumb is added to the scope. When nothing is returned from the function, the breadcrumb is dropped
BeforeSendCallback = FutureOr<SentryEvent?> Function(SentryEvent event, {dynamic hint})
This function is called with an SDK specific event object and can return a modified event object or nothing to skip reporting the event
ClockProvider = DateTime Function()
Used to provide timestamp for logging.
ContentLoader = FutureOr<Uint8List> Function()
ErrorCallback = bool Function(Object exception, StackTrace stackTrace)
FlutterOptionsConfiguration = FutureOr<void> Function(SentryFlutterOptions)
Configuration options callback
OnFinishedCallback = Future<void> Function({DateTime? endTimestamp})
OnTransactionFinish = FutureOr<void> Function(ISentrySpan transaction)
Called when a transaction is finished.
OptionsConfiguration = FutureOr<void> Function(SentryOptions)
Configuration options callback
PackageLoader = Future<PackageInfo> Function()
a PackageInfo wrapper to make it testable
RouteNameExtractor = RouteSettings? Function(RouteSettings? settings)
ScopeCallback = FutureOr<void> Function(Scope)
Configures the scope through the callback.
SentryLogger = void Function(SentryLevel level, String message, {Object? exception, String? logger, StackTrace? stackTrace})
Logger interface to log useful debugging information if debug is enabled
TracesSamplerCallback = double? Function(SentrySamplingContext samplingContext)

Exceptions / Errors

InvalidSentryTraceHeaderException
SentryHttpClientError
ThrowableMechanism
A decorator that holds a Mechanism related to the decorated Exception