diff --git a/lib/data/repository/core_facade_impl.dart b/lib/data/repository/core_facade_impl.dart index 8d160c3b..2564dedc 100644 --- a/lib/data/repository/core_facade_impl.dart +++ b/lib/data/repository/core_facade_impl.dart @@ -27,6 +27,10 @@ class CoreFacadeImpl with ExceptionHandler, InfraLogger implements CoreFacade { return exceptionHandler( () { loggy.debug("setting up singbox"); + loggy.debug("base dir: ${filesEditor.baseDir.path}"); + loggy.debug("working dir: ${filesEditor.workingDir.path}"); + loggy.debug("temp dir: ${filesEditor.tempDir.path}"); + return singbox .setup( filesEditor.baseDir.path, diff --git a/lib/data/repository/profiles_repository_impl.dart b/lib/data/repository/profiles_repository_impl.dart index 93908a77..5bb9a554 100644 --- a/lib/data/repository/profiles_repository_impl.dart +++ b/lib/data/repository/profiles_repository_impl.dart @@ -84,7 +84,10 @@ class ProfilesRepositoryImpl ) .run(); }, - ProfileUnexpectedFailure.new, + (error, stackTrace) { + loggy.warning("error adding profile by url", error, stackTrace); + return ProfileUnexpectedFailure(error, stackTrace); + }, ); } @@ -107,7 +110,10 @@ class ProfilesRepositoryImpl ) .run(); }, - ProfileUnexpectedFailure.new, + (error, stackTrace) { + loggy.warning("error adding profile", error, stackTrace); + return ProfileUnexpectedFailure(error, stackTrace); + }, ); } @@ -115,6 +121,9 @@ class ProfilesRepositoryImpl TaskEither update(Profile baseProfile) { return exceptionHandler( () async { + loggy.debug( + "updating profile [${baseProfile.name} (${baseProfile.id})]", + ); return fetch(baseProfile.url, baseProfile.id) .flatMap( (remoteProfile) => TaskEither(() async { @@ -130,7 +139,10 @@ class ProfilesRepositoryImpl ) .run(); }, - ProfileUnexpectedFailure.new, + (error, stackTrace) { + loggy.warning("error updating profile", error, stackTrace); + return ProfileUnexpectedFailure(error, stackTrace); + }, ); } @@ -170,6 +182,7 @@ class ProfilesRepositoryImpl return parseResult.fold( (l) async { await File(path).delete(); + loggy.warning("error parsing config: $l"); return left(ProfileFailure.invalidConfig(l.msg)); }, (_) { diff --git a/lib/domain/profiles/profiles_failure.dart b/lib/domain/profiles/profiles_failure.dart index d8440cf6..8dcba0e5 100644 --- a/lib/domain/profiles/profiles_failure.dart +++ b/lib/domain/profiles/profiles_failure.dart @@ -23,7 +23,9 @@ sealed class ProfileFailure with _$ProfileFailure, Failure { return switch (this) { ProfileUnexpectedFailure() => t.failure.profiles.unexpected, ProfileNotFoundFailure() => t.failure.profiles.notFound, - ProfileInvalidConfigFailure() => t.failure.profiles.invalidConfig, + ProfileInvalidConfigFailure(:final message) => + t.failure.profiles.invalidConfig + + (message == null ? "" : ": $message"), }; } } diff --git a/lib/utils/custom_loggers.dart b/lib/utils/custom_loggers.dart index fabbab45..d53932da 100644 --- a/lib/utils/custom_loggers.dart +++ b/lib/utils/custom_loggers.dart @@ -5,7 +5,7 @@ import 'package:loggy/loggy.dart'; /// used in notifiers and controllers mixin AppLogger implements LoggyType { @override - Loggy get loggy => Loggy('🧮 $runtimeType'); + Loggy get loggy => Loggy('$runtimeType'); } /// presentation layer logger @@ -13,7 +13,7 @@ mixin AppLogger implements LoggyType { /// used in widgets and ui mixin PresLogger implements LoggyType { @override - Loggy get loggy => Loggy('🏰 $runtimeType'); + Loggy get loggy => Loggy('$runtimeType'); } /// data layer logger @@ -21,7 +21,7 @@ mixin PresLogger implements LoggyType { /// used in Repositories, DAOs, Services mixin InfraLogger implements LoggyType { @override - Loggy get loggy => Loggy('💾 $runtimeType'); + Loggy get loggy => Loggy('$runtimeType'); } abstract class LoggerMixin {