mobile bluesky app made with flutter
lazurite.stormlightlabs.org/
mobile
bluesky
flutter
1import 'dart:developer' as developer;
2
3class Logger {
4 const Logger(this.name);
5
6 final String name;
7
8 void debug(String message, [Object? error, StackTrace? stackTrace]) {
9 final formattedError = _formatMetadata(error);
10 developer.log(message, name: name, level: 500, error: formattedError, stackTrace: stackTrace);
11 }
12
13 void info(String message, [Object? error, StackTrace? stackTrace]) {
14 final formattedError = _formatMetadata(error);
15 developer.log(message, name: name, level: 800, error: formattedError, stackTrace: stackTrace);
16 }
17
18 void warning(String message, [Object? error, StackTrace? stackTrace]) {
19 final formattedError = _formatMetadata(error);
20 developer.log(message, name: name, level: 900, error: formattedError, stackTrace: stackTrace);
21 }
22
23 void error(String message, [Object? error, StackTrace? stackTrace]) {
24 final formattedError = _formatMetadata(error);
25 developer.log(message, name: name, level: 1000, error: formattedError, stackTrace: stackTrace);
26 }
27
28 Object? _formatMetadata(Object? metadata) {
29 if (metadata == null) return null;
30 if (metadata is Map || metadata is List) {
31 return metadata.toString();
32 }
33 return metadata;
34 }
35}