Class: Staccato::Timing

Inherits:
Object
  • Object
show all
Includes:
Hit
Defined in:
lib/staccato/timing.rb

Overview

Timing Hit type field definitions

Author:

  • Tony Pitale

Constant Summary collapse

FIELDS =

Timing field definitions

{
  category: 'utc',
  variable: 'utv',
  label: 'utl',
  time: 'utt',

  # more specific timings
  page_load_time: 'plt',
  dns_time: 'dns',
  page_download_time: 'pdt',
  redirect_response_time: 'rrt',
  tcp_connect_time: 'tcp',
  server_response_time: 'srt'
}

Constants included from Hit

Hit::BOOLEAN_FIELDS, Hit::GLOBAL_OPTIONS

Instance Method Summary collapse

Methods included from Hit

#add_custom_dimension, #add_custom_metric, #add_measurement, #custom_dimensions, #custom_metrics, #fields, included, #initialize, #measurements, #params, #session_control

Methods included from BooleanHelpers

#boolean_field?, #convert_boolean, #convert_booleans, #integer_for

Instance Method Details

#track!(&block) ⇒ Object

tracks the timing hit type

Parameters:

  • block (#call)

    block is executed and time recorded



30
31
32
33
34
35
36
37
38
39
40
# File 'lib/staccato/timing.rb', line 30

def track!(&block)
  if block_given?
    start_at = Time.now
    block.call
    end_at = Time.now

    self.options.time = (end_at - start_at).to_i*1000
  end

  super
end

#typeObject

timing hit type



24
25
26
# File 'lib/staccato/timing.rb', line 24

def type
  :timing
end