Skip to content

2.0.0

Compare
Choose a tag to compare
@orhanobut orhanobut released this 27 May 15:18
· 39 commits to master since this release
  • LogAdapter functionality is changed. Log adapter decides when to log with isLoggable and how to log with format strategy. You can create your custom adapter and add to Logger. Logger now accepts multiple log adapters.

  • Initialization changed. Old style is not supported any longer. Use the following style with log adapters. This approach allows you to add multiple adapters and each adapter contains different logic.

Logger.addLogAdapter(new AndroidLogAdapter());
  • FormatStrategy added. With format strategy, you can have different output format such as normal pretty look or csv. You can also add your custom format.

  • Settings is removed. Format settings are associated with format strategy. Use the built-in functions to change the appearance or behavior.

FormatStrategy formatStrategy = PrettyFormatStrategy.newBuilder()
  .showThreadInfo(false)  // (Optional) Whether to show thread info or not. Default true
  .methodCount(0)         // (Optional) How many method line to show. Default 2
  .methodOffset(7)        // (Optional) Hides internal method calls up to offset. Default 5
  .logStrategy(customLog) // (Optional) Changes the log strategy to print out. Default LogCat
  .tag("My custom tag")   // (Optional) Custom tag for each log. Default PRETTY_LOGGER
  .build();

Logger.addLogAdapter(new AndroidLogAdapter(formatStrategy));
  • LogStrategy added. Log stratey decides what to do with the input, for example: print out to logcat or save it to file. You can create your custom log strategy as well.

  • LogLevel removed. There are many different ways when it comes to what to log and when to log. Therefore decision is now up to the developer. Log adapters contain isLoggable function. Simply override it and put your log condition.

Logger.addLogAdapter(new AndroidLogAdapter(){
  @Override public boolean isLoggable(int priority, String tag) {
    return BuildConfig.DEBUG;
  }
});
  • DiskLogAdapter added. Save output to file, CSV format is supported.
Logger.addLogAdapter(new DiskLogAdapter());
  • Divider's width is increased. Visual appearance change.

  • For more details about the new structure, check the diagram how it works.