subtracks/lib/util/logger.dart
2025-12-14 10:09:32 +09:00

49 lines
920 B
Dart

import 'package:logger/logger.dart';
class LogLevelFilter extends LogFilter {
@override
bool shouldLog(LogEvent event) {
return event.level >= level!;
}
}
class SubtracksLogger extends Logger {
SubtracksLogger({
super.filter,
super.printer,
super.output,
required Level level,
}) : _level = level,
super(level: level);
final Level _level;
Level get level => _level;
}
SubtracksLogger createLogger() {
var isDebug = false;
assert(() {
isDebug = true;
return true;
}());
if (isDebug) {
return SubtracksLogger(
filter: DevelopmentFilter(),
printer: PrettyPrinter(),
output: ConsoleOutput(),
level: Level.debug,
);
}
// TODO: production logger
return SubtracksLogger(
filter: DevelopmentFilter(),
printer: PrettyPrinter(),
output: ConsoleOutput(),
level: Level.debug,
);
}
final logger = createLogger();