Sha256: bad53f25bb4d0831ffa5fc65dc4b85c67d60c182f9c2b2339d584e08a901d83f
Contents?: true
Size: 1 KB
Versions: 3
Compression:
Stored size: 1 KB
Contents
require 'tracebin/recorder' require 'tracebin/helpers' module Tracebin class Timer include ::Tracebin::Helpers attr_accessor :transaction_name attr_reader :events def initialize(transaction_name = nil) @transaction_name = transaction_name @start_time = nil @stop_time = nil end def start! @start_time = Time.now Recorder.start_recording end def stop! collect_events Recorder.stop_recording @stop_time = Time.now end def payload { type: :cycle_transaction, data: { transaction_type: transaction_type, name: @transaction_name, start: @start_time, stop: @stop_time, duration: duration, events: @events } } end def duration to_milliseconds @stop_time - @start_time end def transaction_type 'request_response' end private def collect_events @events = Recorder.events end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
tracebin-0.0.10 | lib/tracebin/timer.rb |
tracebin-0.0.9 | lib/tracebin/timer.rb |
tracebin-0.0.8 | lib/tracebin/timer.rb |