Skip to content

Lotsa metrics + database cleanup + public dataset API

Pre-release
Pre-release
Compare
Choose a tag to compare
@shankari shankari released this 18 Jul 04:55
· 2338 commits to master since this release

The theme of this release is: metrics.

On the server side, we have (#310):

  • Metrics API that returns daily, monthly, yearly summaries of various metrics,
    both wrt local time filters and UTC timestamp ranges.
  • New metrics screen that shows trip count, distance and duration over time,
    split by mode. On the server, these are aggregate metrics - on the phone,
    they are individual metrics.

Thanks to @yw374cornell, we now have a new public API for pulling data from the
test phones from the server. This is the first step towards creating a public
database that can be used for power/efficiency tradeoffs. (#312, #317)

We also have several other cleanup fixes.

  • Unify, extend and fix bugs in the built-in timeseries implementation
  • Refactor the query that excludes test phones
  • Clean up analysis timeseries code
  • Fix several bugs found by running automated tests after cleanup
  • Fixed local_date semantics to better match timestamp semantics
  • clean up the database queries to remove obsolete collections
    get_trip_new_db(), get_place_db(), get_section_new_db() and
    get_stop_db() and their references.
  • refactor the index generation code and create a bunch of new indices for the
    analysis objects
  • Reuse mongodb connection across multiple collection retrievals. This improves
    performance and prevents exhaustion of incoming connections.
  • Move all logging config to the main function. Module level logging config is
    bad because it can override logging configs in other modules, depending on
    import order.

screen shot 2016-07-17 at 9 54 11 pm