fimber 0.1.1

  • README.md
  • CHANGELOG.md
  • Example
  • Installing
  • Versions
  • new71

fimber

Extensible logging for Flutter.

Based on famous Android logging library - Timber, this is library for simplify logging for Flutter. Using similar (as far as Dart lang allows) method API with same concepts for tree and planting logging tree.

Getting Started

To start add using it:

  • Add fimber to pubspec.yaml
dependencies:
  fimber: ^0.1.0
  • Start using it with static methods:
import 'fimber.dart';


void main() {
  var parameter = 343.0;
  // use directly
  Fimber.i("Test message $argument");
  Fimber.i("Extra error message", ex: Exception("Test thorwable"));
  
  // other log levels
  Fimber.d("DEBUG");
  Fimber.v("VERBOSE");
  Fimber.w("WARN");
  
}

This will log the value and grab a TAG from stacktrace - that is little costly and if more logs will be done per second.

  • Create tagged version of Fimber and use its instance inside class, you can create logger for a dart file or for a class.
var logger = FimberLog("MY_TAG");

void main() {
  
  logger.d("Test message");
}

// or inside a class
class SomeBloc {
  var logger = FimberLog("SomeBloc");
  String fetchMessage() {
    logger.d("About to fetch some data.");
    //...
    var data = "load something";

    logger.d("Retrived data (len = ${data.length}");
    return data;
  }
}

TODO - road map

  • un-plant single tree
  • Make this Dart only Logger and use flutter dependency only for plugins
  • Add Tree for platform specific log/tag logging via channels - plugins
  • Add Crashlytics plugin (maybe other remote logger tools) with flutter_crashlytics

[0.1] - First Version

Initial version with Fimber debugging and DebugTree

example/example.dart

import 'package:fimber/fimber.dart';

void main() {
  // plant a tree - DebugTree()
  Fimber.plantTree(DebugTree());

  Fimber.d("Test message", ex: Exception("test error"));
  var parameter = 100.0;
  Fimber.w("Test message with parameter: $parameter");

  var logger = FimberLog("MY_TAG");
  logger.d("Test message", ex: Exception("test error"));
  logger.w("Test message with parameter: $parameter");
}

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:


dependencies:
  fimber: ^0.1.1

2. Install it

You can install packages from the command line:

with Flutter:


$ flutter packages get

Alternatively, your editor might support flutter packages get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:


import 'package:fimber/fimber.dart';
  
Version Uploaded Documentation Archive
0.1.1 Nov 8, 2018 Go to the documentation of fimber 0.1.1 Download fimber 0.1.1 archive
0.1.0 Nov 8, 2018 Go to the documentation of fimber 0.1.0 Download fimber 0.1.0 archive
Popularity:
Describes how popular the package is relative to other packages. [more]
41
Health:
Code health derived from static analysis. [more]
100
Maintenance:
Reflects how tidy and up-to-date the package is. [more]
100
Overall:
Weighted score of the above. [more]
71
Learn more about scoring.

We analyzed this package on Nov 14, 2018, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.0.0
  • pana: 0.12.6
  • Flutter: 0.11.3

Platforms

Detected platforms: Flutter

References Flutter, and has no conflicting libraries.

Dependencies

Package Constraint Resolved Available
Direct dependencies
Dart SDK >=2.0.0-dev.68.0 <3.0.0
flutter 0.0.0
Transitive dependencies
collection 1.14.11
meta 1.1.6
sky_engine 0.0.99
typed_data 1.1.6
vector_math 2.0.8
Dev dependencies
flutter_test