Asset Bundle Instrumentation
AssetBundle instrumentation provides insight into how long your app takes to load its assets, such as files.
The instrumentation starts a span from an active transaction that's bound to the scope of the following calls:
load
andloadString
- The SDK sets the spanoperation
tofile.read
.loadStructuredData
- The SDK sets the spanoperation
toserialize
.
Before starting, ensure:
- The Sentry Flutter SDK is initialized. Learn more here.
- Performance Monitoring is set up. Learn more here.
Wrap the runApp
method with a DefaultAssetBundle
and SentryAssetBundle
.
Copied
import 'package:flutter/widgets.dart';
import 'package:sentry_flutter/sentry_flutter.dart';
Future<void> main() async {
await SentryFlutter.init(
(options) => options.dsn = 'https://examplePublicKey@o0.ingest.sentry.io/0',
appRunner: () => runApp(
DefaultAssetBundle(
bundle: SentryAssetBundle(),
child: MyApp(),
),
),
);
}
Copied
final transaction = Sentry.startTransaction(
'asset-bundle-transaction',
'load',
bindToScope: true,
);
final text = await DefaultAssetBundle.of(context).loadString('assets/lorem-ipsum.txt');
await transaction.finish(status: const SpanStatus.ok());
To view the recorded transaction, log into sentry.io and open your project. Clicking Performance will open a page with transactions, where you can select the just recorded transaction with the name asset-bundle-transaction
.
The loadStructuredData
is an opt-out feature. The following example shows how to disable it:
Copied
import 'package:sentry_flutter/sentry_flutter.dart';
SentryAssetBundle(enableStructuredDataTracing: false)
Help improve this content
Our documentation is open source and available on GitHub. Your contributions are welcome, whether fixing a typo (drat!) or suggesting an update ("yeah, this would be better").
Our documentation is open source and available on GitHub. Your contributions are welcome, whether fixing a typo (drat!) or suggesting an update ("yeah, this would be better").
- Package:
- pub:sentry_flutter
- Version:
- 7.20.0
- Repository:
- https://github.com/getsentry/sentry-dart
- API Documentation:
- https://pub.dev/documentation/sentry_flutter/latest/