class OneApm::EventAnalyticData

Constants

OA_ERROR_ALL_KEY

Attributes

apdex[R]
bytes_rec[R]
bytes_sent[R]
call_count[R]
call_type[R]
duration[R]
errors[R]
exec_time[R]
guid[R]
has_trace[R]
refer_guid[R]
request_url[R]
start_time[R]
trip_guid[R]

Public Class Methods

new(payload = {}) click to toggle source
# File lib/one_apm/transaction/event_analytic_data.rb, line 10
def initialize(payload = {})
   @start_time  = payload[:start_timestamp].to_f * 1000
   @guid        = payload[:guid]
   @refer_guid  = payload[:referring_transaction_guid]
   @trip_guid   = payload[:cat_trip_id] || @refer_guid || @guid
   @call_count  = payload[:call_count] || 1
   @duration    = payload[:duration]
   @errors      = error_times(payload[:metrics])
   @apdex       = payload[:apdex_perf_zone]
   @request_url = payload[:request_url]
   @bytes_sent  = 0
   @bytes_rec   = 0
   @has_trace   = apdex != Transaction::OA_APDEX_S ? 1 : 0
   @exec_time   = payload[:duration]
   @call_type   = 0  # 0: syn , 1: asyn
end

Public Instance Methods

error_times(txn_metrics) click to toggle source
# File lib/one_apm/transaction/event_analytic_data.rb, line 27
def error_times(txn_metrics)
  return txn_metrics[OA_ERROR_ALL_KEY].call_count if txn_metrics.has_key?(OA_ERROR_ALL_KEY) rescue 0
  return 0
end
to_collector_array(encoder = nil) click to toggle source
# File lib/one_apm/transaction/event_analytic_data.rb, line 32
def to_collector_array(encoder = nil)
  [
    start_time, 
    guid,       
    refer_guid, 
    trip_guid,  
    call_count, 
    duration,   
    errors,     
    apdex,      
    request_url,
    bytes_sent, 
    bytes_rec,  
    has_trace,  
    exec_time,  
    call_type
  ]
end