Class: AwsSqsMoniter::Middleware::Server::Airbrake

Inherits:
Object
  • Object
show all
Defined in:
lib/aws_sqs_moniter/middleware/server/airbrake.rb

Instance Method Summary collapse

Instance Method Details

#call(_worker, _queue, sqs_msg, body) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/aws_sqs_moniter/middleware/server/airbrake.rb', line 5

def call(_worker, _queue, sqs_msg, body)
  yield
rescue => e
  parameters = {}

  begin
    message = TypedMessage.new sqs_msg
    parameters.store :message, message.headers
  rescue
    parameters.store :unknown_message_format, body
  end

  ::Airbrake.notify_or_ignore e, parameters: parameters

  raise e
end