From 9617e76763e7b672fb25c7cf2c0ab6aeeb2ad03b Mon Sep 17 00:00:00 2001 From: Christian Pauly Date: Tue, 26 Jan 2021 15:32:04 +0100 Subject: [PATCH] change: Less noisy oneline logs --- CHANGELOG.md | 5 +++++ lib/src/utils/logs.dart | 16 +++++++++++++++- pubspec.yaml | 2 +- test/matrix_api_test.dart | 13 +++++++++++++ 4 files changed, 34 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 79f6e866..b469972e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,11 @@ +## 0.1.7 + +- change: Less noisy one-line logs + ## 0.1.6 - fix: well-known in fake_matrix_api + ## 0.1.5 - Add m.dummy event diff --git a/lib/src/utils/logs.dart b/lib/src/utils/logs.dart index e902859f..a6a64be5 100644 --- a/lib/src/utils/logs.dart +++ b/lib/src/utils/logs.dart @@ -36,7 +36,7 @@ class Logs extends Logger { Logs._internal() : super( - printer: PrettyPrinter(methodCount: 0, lineLength: 100), + printer: _MatrixSdkPrinter(), filter: _MatrixSdkFilter(), output: _CacheOutput(), ); @@ -54,3 +54,17 @@ class _CacheOutput extends ConsoleOutput { super.output(event); } } + +class _MatrixSdkPrinter extends PrettyPrinter { + _MatrixSdkPrinter() : super(methodCount: 0, lineLength: 100); + + @override + List log(LogEvent event) { + if (event.error == null && event.stackTrace == null) { + return [ + '${PrettyPrinter.levelColors[event.level]}${PrettyPrinter.levelEmojis[event.level]} ${event.message.toString()}' + ]; + } + return super.log(event); + } +} diff --git a/pubspec.yaml b/pubspec.yaml index 920ebc89..9d2cee96 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,6 +1,6 @@ name: matrix_api_lite description: Dead simple data model for the matrix.org client-server API. -version: 0.1.6 +version: 0.1.7 homepage: https://famedly.com environment: diff --git a/test/matrix_api_test.dart b/test/matrix_api_test.dart index df6e1645..ecdff689 100644 --- a/test/matrix_api_test.dart +++ b/test/matrix_api_test.dart @@ -30,6 +30,19 @@ import 'package:test/test.dart'; void main() { /// All Tests related to device keys group('Matrix API', () { + test('Logger', () async { + Logs().level = Level.verbose; + Logs().v('Test log'); + Logs().d('Test log'); + Logs().w('Test log'); + Logs().e('Test log'); + Logs().wtf('Test log'); + Logs().v('Test log', Exception('Test')); + Logs().d('Test log', Exception('Test')); + Logs().w('Test log', Exception('Test')); + Logs().e('Test log', Exception('Test')); + Logs().wtf('Test log', Exception('Test')); + }); Logs().level = Level.error; final matrixApi = MatrixApi( httpClient: FakeMatrixApi(),