Method: Clickstream::Capture#initialize
- Defined in:
- lib/clickstream/capture.rb
#initialize(app, opts = {}) ⇒ Capture
Returns a new instance of Capture.
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/clickstream/capture.rb', line 16 def initialize(app, opts={}) @app = app # Options @capture = !!opts[:capture] @bench = opts[:capture] && opts[:bench] capture_crawlers = opts[:capture_crawlers] crawlers = opts[:crawlers] || "(Baidu|Gigabot|Googlebot|libwww-perl|lwp-trivial|msnbot|SiteUptime|Slurp|WordPress|ZIBB|ZyBorg|bot|crawler|spider|robot|crawling|facebook|w3c|coccoc|Daumoa|panopta)" api_key = opts[:api_key] api_uri = opts[:api_uri] @filter_params = opts[:filter_params] || [] @filter_uri = opts[:filter_uri] || [] filter_params.concat(Rails.configuration.filter_parameters || []) if defined?(Rails) Clickstream.logger = opts[:logger] if opts[:logger] raise ArgumentError, 'API key missing.' if api_key.nil? @inspector = Clickstream::Inspector.new api_key, api_uri, crawlers, capture_crawlers, filter_params @client = {} Clickstream::APIClient.new(api_key, api_uri).handshake { |k, v| @client[k] = v} end |