class RaygunClient::Data
Public Instance Methods
==(other)
click to toggle source
# File lib/raygun_client/data.rb, line 12 def ==(other) self.class == other.class && occurred_time == other.occurred_time && machine_name == other.machine_name && client == other.client && error == other.error end
transform_write(data)
click to toggle source
# File lib/raygun_client/data.rb, line 20 def transform_write(data) data[:occurred_on] = data.delete(:occurred_time) details = {} details[:machine_name] = data.delete(:machine_name) client = data.delete(:client) details[:client] = client.to_h error = data.delete(:error) error_data = {} error_data[:class_name] = error.class_name error_data[:message] = error.message stack_trace = [] error.backtrace.each do |frame| frame_data = {} frame_data[:file_name] = frame.filename frame_data[:line_number] = frame.line_number frame_data[:method_name] = frame.method_name stack_trace << frame_data end error_data[:stack_trace] = stack_trace details[:error] = error_data tags = data.delete(:tags) details[:tags] = tags unless tags.empty? custom_data = data.delete(:custom_data) details[:user_custom_data] = custom_data unless custom_data.empty? data[:details] = details end