CherriLog is perhaps the simplest and most useful log library for all dart program
- Log messages directly by calling static methods
- Nice stacktrace formatter
- Custom log levels support
- Custom loggers:
- CherriConsole Direct output to console with different colors
- CherriFile Direct output to file
- Log to file (Full Platform Path Support)
- Highly customizable log format
-
Add the dependency to your
pubspec.yaml
file
Recommend to use command line:With Flutter
flutter pub add cherrilog
With Dart
dart pub add cherrilog
-
Import library
import 'package:cherrilog/cherrilog.dart';
-
Initialize cherrilog
CherriLog.init( options: CherriOptions() ..logLevelRange = CherriLogLevelRanges.all ..useBuffer = false, ).logTo(CherriConsole()); // Use `CherriFile()` instead of `CherriConsole` if you want to log to file system
-
Call log methods
debug('This is a debug message'); info('This is an info message'); warning('This is a warning message'); error('Something went wrong'); fatal('Oh oh :(');
Cherrilog provides a CherriLogLevel
class to support custom level, and below is the default instances:
CherriLogLevel.fatal
: Fatal errorsCherriLogLevel.error
: ErrorsCherriLogLevel.warning
: WarningsCherriLogLevel.info
: Information messagesCherriLogLevel.debug
: Debug messages
And you will also see nether
and upperBond
, these two instances is to help with comparison, don't use them directly.
You can find some predefined log level ranges in CherriLogLevelRanges
class.
We offer some preset timestamp formats with in formatter/timestamp.dart
.
You can also use your own format.
Note: The colors may vary depending on the terminal. This is probably the result on VSCode. Reference