Collecting data with Trackers and Webhooks

  1. Home
  2. Docs
  3. Collecting data with Trackers and Webhooks
  4. Trackers – collecting data from your own applications
  5. Ruby Tracker
  6. Contracts, logging and advanced usage

Contracts, logging and advanced usage


The Snowplow Ruby Tracker uses the Ruby Contracts gem for typechecking. As of version 0.6.0 these cannot be turned off.


The emitters.rb module has Ruby logging enabled to give you information about requests being sent. The logger prints messages about what emitters are doing. By default, only messages with priority “INFO” or higher will be logged.

To change this:

require 'logger' SnowplowTracker::LOGGER.level = Logger::DEBUG
Code language: PHP (php)

The levels are:

FATALNothing logged
WARNNotification for requests with status code not equal to 200
INFONotification for all requests
DEBUGContents of all requests

Advanced usage


snowplow_ruby_duid is a Ruby gem that allows you to populate Snowplow’s domain_userid cookie server-side from any Rack-based framework. This is useful if you want to fire an event on the user’s initial request with the domain_userid already populated.

If you’d like to learn more about Snowplow Insights you can book a demo with our team, or if you’d prefer, you can try Snowplow technology for yourself quickly and easily.