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

Contracts

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

Logging

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

The levels are:

LevelDescription
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

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.