We are pleased to announce Snowplow Android Tracker 1.6.0. Version 1.6.0 introduces the ability for the tracker to report tracker errors to the main app. It also comes with a refactor of the Emitter.

Read on below for:

  1. Tracker diagnostics
  2. Refactoring the Emitter
  3. Documentation
  4. Getting help

1. Tracker diagnostics

The tracker diagnostics feature adds the ability for the tracker to report logs to the main app (GitHub issue #407).

The tracker already managed errors internally, avoiding crashes of the app and assuring that no events are lost. The tracker could also report the errors to a configured Snowplow collector as diagnostic_error events (this was introduced in version 1.4.0).

This new feature allows the app to get the tracker logs, and you can decide which log level you want to filter logs to when you configure the tracker:

TrackerBuilder trackerBuilder =
    new TrackerBuilder(emitter, namespace, appId, appContext)
        ...
        .level(LogLevel.VERBOSE)
        ...
        .build();
Tracker.init(trackerBuilder);

There are four levels of logging: off (log disabled), error, debug, verbose. More information on this can be found in the technical documentation.

2. Rectoring the Emitter

The Emitter is now split it into three parts (GitHub issue #409):

  • the EventStore: handles the persistence of tracked events not yet sent to the collector
  • the NetworkConnection: establishes the connection with the collector and performs the requests
  • the Emitter: handles dispatching, i.e. aggregation of events into a single request and backoff and retry of failed requests

The Emitter API is still the same, so the EventStore and the NetworkConnection can be configured automatically by the Emitter from the Emitter configuration. However, this setup improves testing and makes it easier to add new functionality in the future.

3. Documentation

As always, information about how to use the tracker can be found in the Android Tracker documentation.

You can find the full release notes on GitHub as Snowplow Android Tracker v1.6.0 release.

4. Getting help

For help on integrating the tracker please have a look at the setup guide. If you have any questions or run into any problems, please visit our Discourse forum. Please raise any bugs in the Android Tracker’s issues on GitHub.