Skip to content

Instantly share code, notes, and snippets.

@tdomarkas
Last active April 18, 2024 12:45
Show Gist options
  • Save tdomarkas/336439ac5378a8edfa142410b3c89119 to your computer and use it in GitHub Desktop.
Save tdomarkas/336439ac5378a8edfa142410b3c89119 to your computer and use it in GitHub Desktop.
Riverpod debug observer
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:logging/logging.dart';
/// Usage:
///
/// ```dart
/// ProviderScope(
/// observers: kDebugMode ? [RiverpodDebugObserver()] : [],
/// child: MyApp(),
/// )
/// ```
class RiverpodDebugObserver extends ProviderObserver {
@override
void didAddProvider(ProviderBase<Object?> provider, Object? value, ProviderContainer container) {
Logger.root.fine('[RIVERPOD] Added provider: $provider');
}
@override
void didUpdateProvider(ProviderBase<Object?> provider, Object? previousValue, Object? newValue, ProviderContainer container) {
Logger.root.fine('[RIVERPOD] Updated provider: $provider');
}
@override
void didDisposeProvider(ProviderBase<Object?> provider, ProviderContainer container) {
Logger.root.fine('[RIVERPOD] Disposed provider: $provider');
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment