Module: RedisAnalytics::Configuration

Included in:
RedisAnalytics
Defined in:
lib/redis_analytics/configuration.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#api_endpointObject



91
92
93
# File 'lib/redis_analytics/configuration.rb', line 91

def api_endpoint
  @api_endpoint || dashboard_endpoint + '/api'
end

Name of the cookie which tracks visits



47
48
49
# File 'lib/redis_analytics/configuration.rb', line 47

def current_visit_cookie_name
  @current_visit_cookie_name ||= '_vcn'
end

#dashboard_endpointObject



95
96
97
# File 'lib/redis_analytics/configuration.rb', line 95

def dashboard_endpoint
  @dashboard_endpoint || '/redis_analytics'
end

#filtersObject



51
52
53
# File 'lib/redis_analytics/configuration.rb', line 51

def filters
  @filters ||= []
end

Name of the cookie which tracks first visitors (unknown visitors)



42
43
44
# File 'lib/redis_analytics/configuration.rb', line 42

def first_visit_cookie_name
  @first_visit_cookie_name ||= '_rucn'
end

#geo_ip_data_pathObject



67
68
69
# File 'lib/redis_analytics/configuration.rb', line 67

def geo_ip_data_path
  @geo_ip_data_path = ::File.expand_path(::File.join(::File.dirname(__FILE__),'..','..')) + "/bin/GeoIP.dat"
end

#path_filtersObject



55
56
57
# File 'lib/redis_analytics/configuration.rb', line 55

def path_filters
  @path_filters ||= []
end

#redis_connectionObject

Redis connection instance



4
5
6
# File 'lib/redis_analytics/configuration.rb', line 4

def redis_connection
  @redis_connection
end

#redis_namespaceObject

Redis namespace for keys



32
33
34
# File 'lib/redis_analytics/configuration.rb', line 32

def redis_namespace
  @redis_namespace ||= 'ra'
end

#visit_timeoutObject

Minutes the visit should timeout after (if no hit is received)



37
38
39
# File 'lib/redis_analytics/configuration.rb', line 37

def visit_timeout
  @visit_timeout ||= 30 # minutes
end

Instance Method Details

#add_filter(&proc) ⇒ Object



59
60
61
# File 'lib/redis_analytics/configuration.rb', line 59

def add_filter(&proc)
  filters << RedisAnalytics::Filter.new(proc)
end

#add_path_filter(path) ⇒ Object



63
64
65
# File 'lib/redis_analytics/configuration.rb', line 63

def add_path_filter(path)
  path_filters << RedisAnalytics::PathFilter.new(path)
end

#configure {|_self| ... } ⇒ Object

Yields:

  • (_self)

Yield Parameters:



87
88
89
# File 'lib/redis_analytics/configuration.rb', line 87

def configure
  yield self
end

#default_rangeObject



75
76
77
# File 'lib/redis_analytics/configuration.rb', line 75

def default_range
  @default_range = :day
end

#redis_key_timestampsObject

format, expire in seconds or nil


79
80
81
# File 'lib/redis_analytics/configuration.rb', line 79

def redis_key_timestamps # [format, expire in seconds or nil]
  ['%Y', '%Y_%m', '%Y_%m_%d', '%Y_%m_%d_%H', '%Y_%m_%d_%H_%M']
end

#time_range_formatsObject



83
84
85
# File 'lib/redis_analytics/configuration.rb', line 83

def time_range_formats
  [[:year, :month, "%b"], [:week, :day, "%a"], [:day, :hour, "%l%P"]]
end

#visitor_recency_slicesObject



71
72
73
# File 'lib/redis_analytics/configuration.rb', line 71

def visitor_recency_slices
  @visitor_recency_slices ||= [1, 7, 30]
end