Snowplow Inspector Web Extension
A debugging tool to help you examine and debug your Snowplow tracking implementation.
List and filter all your tracking events
See tracking parameters in human-friendly format
GET and POST tracking support
Automatically decode and parse Self-Describing Events and Custom Contexts
Validate your Contexts and Events against the schemas in your Iglu Repository
Import events from your bad rows bucket/stream and see why they failed enrichment
Feedback, feature requests, pull requests, and bug reports are welcome! Please file an issue.
At the moment, only Chrome/Chromium are supported via an official app store, and builds for Firefox are available, but not supported. To install the extension, visit the page on the Chrome Web Store. You can get builds for Firefox v60+ in Releases.
The extension options should let you load in local JSON Schema files during development, and you can also add your production or Snowplow Mini Iglu Repositories to test against what you have in production.
Adding an Iglu Repository
Right-click the extension icon in the main browser toolbar
Paste the URL to your repository in the Iglu Repositories field (if you’re adding Snowplow Mini, you need to keep the
Repository URLs can be separated by spaces, lines, or commas
By default we include the URL for Iglu Central, which includes schemas for the built-in tracking JSONs. You can add as many repositories as you like.
For newer versions of Iglu Server, you need to include a UUID API key. In the options, you can attach this to a specific repo by including it in the URL as a username.
Make sure you have access to your repository from your browser in order for the extension to find your schemas. Typically repositories are hosted on S3, and by default the files may not be publically readable and will result in 403 errors.
For older versions of the extension, it was important to have your repository website or S3 bucket configured for Cross-Origin Resource Sharing. You can find out how to correctly configure an S3 bucket at How Do I Allow Cross-Domain Resource Sharing with CORS? the default rule should work, the extension only requires GET access. More recent versions shouldn’t require CORS to be set up as long as you grant the extension permissions when adding a repository.
If schemas are still 'Unrecognised', try clearing your browser cache and the extension’s Schema Cache. Alternatively, you can import your schemas directly as Local Schemas in the extension Options page.
npm install to install required dependencies, then
npm run build to build the extension in the
Instructions to install a local development version of the extension to test are over at the extension development documentation.
You can also use
npm start to start webpack in watch mode and symlink the resources to make editing easier; source changes should then be reflected immediately in
You will still need to reload the extension in a browser.