class AlacrityRails::Transaction::WebRequest
Attributes
format[RW]
method[RW]
name[RW]
status[RW]
url[RW]
Public Class Methods
endpoint()
click to toggle source
# File lib/alacrity-rails/transaction/web_request.rb, line 40 def self.endpoint @endpoint ||= URI("#{AlacrityRails::Config.collector_host}/v3/events") end
new(data={})
click to toggle source
# File lib/alacrity-rails/transaction/web_request.rb, line 5 def initialize(data={}) @middleware_started_at = DateTime.now self.url = data[:url] self.method = data[:method] end
Public Instance Methods
as_json(*args)
click to toggle source
# File lib/alacrity-rails/transaction/web_request.rb, line 21 def as_json(*args) middleware_started_at = absolute_time(@middleware_started_at) middleware_finished_at = absolute_time(@middleware_finished_at) || absolute_time(DateTime.now) { environment: AlacrityRails::ServerConfig.environment, event_type: 'web-request', name: name, started_at: middleware_started_at, finished_at: middleware_finished_at, timeline_events: prepared_timeline_events, data: { url: url, format: format, method: method, status: status, } } end
finalize(response)
click to toggle source
# File lib/alacrity-rails/transaction/web_request.rb, line 16 def finalize(response) self.status = response&.first @middleware_finished_at = DateTime.now end
store_metadata(data)
click to toggle source
# File lib/alacrity-rails/transaction/web_request.rb, line 11 def store_metadata(data) self.name = [data[:controller], data[:action]].reject(&:blank?).join('#') self.format = data[:format] end