Line data Source code
1 : import 'package:sentry/sentry.dart'; 2 : 3 : // ignore: implementation_imports 4 : import 'package:sentry/src/hub.dart'; 5 : import 'package:timber/timber.dart'; 6 : 7 : import 'sentry_tree.dart'; 8 : 9 : /// Sentry integration for Timber. 10 : class SentryTimberIntegration { 11 : SentryTree _tree; 12 : Function(SentryLevel level, String message) _logger; 13 : 14 : final SentryLevel minEventLevel; 15 : final SentryLevel minBreadcrumbLevel; 16 : 17 1 : SentryTimberIntegration( 18 : {this.minEventLevel = SentryLevel.error, 19 : this.minBreadcrumbLevel = SentryLevel.info}); 20 : 21 1 : void call(Hub hub, SentryOptions options) { 22 2 : _logger = options.logger; 23 : 24 2 : _tree = SentryTree(hub, 25 2 : minEventLevel: minEventLevel, minBreadcrumbLevel: minBreadcrumbLevel); 26 : 27 3 : Timber.instance.plant(_tree); 28 2 : _logger?.call(SentryLevel.debug, 'SentryTimberIntegration installed.'); 29 : } 30 : }