Setting up a Collector

ihortom edited this page Apr 28, 2016 · 27 revisions
Clone this wiki locally

HOME > SNOWPLOW SETUP GUIDE > Step 1: Setup a Collector

The Snowplow collector receives data from Snowplow trackers and logs that data to S3 for storage and further processing. Setting up a collector is the first step in the Snowplow setup process.

  1. Choose a Collector
  2. Setup a Collector

1. Choose a Collector

There are currently three collectors available:

Collector Description Status
Cloudfront Collector A simple, robust and scalable collector powered by AWS Cloudfront Production-ready
Clojure Collector A Clojure-based collector that enables user tracking across domains. Powered by Amazon Elastic Beanstalk Production-ready
Scala Stream Collector A Scala-based collector that enables user tracking across domains. Powered by Amazon Kinesis Production-ready

Do you want to track data from mobile apps, application servers and/or 3rd party webhooks?

If so we recommend setting up the Clojure collector or Scala Stream Collector as these support POST requests as well as GET requests.

Are you setting up Snowplow to track users across a single domain, or multiple domains?

If you are tracking users across multiple domains, we recommending setting up the Clojure collector or Scala Stream Collector. This sets user_ids server side, so you can reliably track user journeys across multiple domains. (In contrast, the Cloudfront collector sets them client side, so users get assigned different user_ids on different domains.)

If you are tracking users across a single domain and don't require mobile app or server side tracking, we recommend setting up the Cloudfront collector.

Do you want to experiment with real-time event analytics?

Then check out the Scala Stream Collector.

2. Setup your Collector

  1. Setup the Cloudfront Collector now!
  2. Setup the Clojure Collector now!
  3. Setup the Scala Stream Collector now!

Setup your collector? Then proceed to step 2: setup a tracker.

Return to the setup guide.