class BrokepointMiddleware
Public Class Methods
new(app)
click to toggle source
# File lib/brokepoint.rb, line 6 def initialize(app) @app = app end
Public Instance Methods
call(env)
click to toggle source
# File lib/brokepoint.rb, line 10 def call(env) begin status, headers, response = @app.call(env) rescue Exception => e Rails.logger.debug("exception has been noted") send_message_to_brokepoint(e.message, e.full_message) raise e end [status, headers, response] end
Private Instance Methods
send_message_to_brokepoint(message, stacktrace)
click to toggle source
# File lib/brokepoint.rb, line 24 def send_message_to_brokepoint(message, stacktrace) brokepoint_installation_address = URI.parse("#{ENV.fetch('BROKEPOINT_URL')}/events") headers = {'Content-Type': 'application/json'} error = { title: message, raw_body: stacktrace } Net::HTTP.post(brokepoint_installation_address, { event: error }.to_json, headers) end