Snowplow 0.9.10 released with support for new JavaScript Tracker v2.1.0 events


We are pleased to announce the release of Snowplow 0.9.10. This is a minimalistic release designed to support the new events and context of the Snowplow JavaScript Tracker v2.1.1, also released today

This release is primarily targeted at Snowplow users of Amazon Redshift who are upgrading to the latest Snowplow JavaScript Tracker (v2.1.0+).

Here are the sections after the fold:

  1. New Redshift tables
  2. New JSON Path files
  3. A note on link_clicks
  4. Upgrading
  5. Documentation and help

1. New Redshift tables

This release defines the following new tables for Redshift:

  • w3_org_performance_timing_1 (a context)
  • com_snowplowanalytics_snowplow_social_interaction_1 (an event)
  • com_snowplowanalytics_snowplow_site_search_1 (an event)
  • com_snowplowanalytics_snowplow_change_form_1 (an event)
  • com_snowplowanalytics_snowplow_submit_form_1 (an event)
  • com_snowplowanalytics_snowplow_remove_from_cart_1 (an event)
  • com_snowplowanalytics_snowplow_add_to_cart_1 (an event)

These tables are all closely modeled on the new JSON Schemas introduced into Iglu Central (repository) in support of the new JavaScript Tracker release.

2. New JSON Path files

To successfully shred the Tracker’s new event and context JSONs into the new Redshift table definitions, we have defined new JSON Paths files:

  • org.w3/performance_timing_1.json
  • com.snowplowanalytics.snowplow/social_interaction_1.json
  • com.snowplowanalytics.snowplow/site_search_1.json
  • com.snowplowanalytics.snowplow/change_form_1.json
  • com.snowplowanalytics.snowplow/submit_form_1.json
  • com.snowplowanalytics.snowplow/remove_from_cart_1.json
  • com.snowplowanalytics.snowplow/add_to_cart_1.json

3. A note on link_clicks

Version 2.1.0 of the JavaScript Tracker added a new (optional) field to tracked link clicks, called elementContent.

In support of this, we released a new version of the link_click JSON Schema to Iglu Central, with SchemaVer 1-0-1 (compare link_click 1-0-0 with 1-0-1). Due to a limitation in the way we perform shredding of JSONs, we are currently unable to introduce a new element_content into the Redshift table for support of this new field.

To be clear: you can send link clicks with the new elementContent attached; these will validate correctly and be stored in Snowplow enriched events (as JSON) correctly; the new field (but not the row) will simply be discarded on its way into Redshift.

We plan to fix this limitation in a future Snowplow release (#1149, #1152).

4. Upgrading

You will need to deploy the tables for any new events/context you want to support into your Amazon Redshift database. Make sure to deploy these into the same schema as your events table resides in.

You can find all Redshift table definitions in our GitHub repository under 4-storage/redshift-storage/sql.

The StorageLoader will automatically pick up the new JSON Paths files – you do not have need to deploy these.

5. Documentation and help

Documentation relating to the new events and contexts is available in the full documentation for the JavaScript Tracker v2.1.1.

As always, if you do run into any issues or don’t understand any of the above changes, please raise an issue or get in touch with us via the usual channels.