Class: RServiceBus2::MonitorAWSSQS
- Defined in:
- lib/rservicebus2/monitor/awssqs.rb
Overview
Monitor S3 Bucket for objects
Instance Attribute Summary
Attributes inherited from Monitor
Instance Method Summary collapse
Methods inherited from Monitor
#_connect, #finished, #initialize, #reconnect, #send
Constructor Details
This class inherits a constructor from RServiceBus2::Monitor
Instance Method Details
#connect(uri) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/rservicebus2/monitor/awssqs.rb', line 9 def connect(uri) queue_name = uri.path.sub('/', '') region = uri.host sts_client = Aws::STS::Client.new(region: region) caller_identity_account = sts_client.get_caller_identity.account @queue_url = "https://sqs.#{region}.amazonaws.com/#{caller_identity_account}/#{queue_name}" @sqs_client = Aws::SQS::Client.new(region: region) end |
#look ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/rservicebus2/monitor/awssqs.rb', line 21 def look response = @sqs_client.(queue_url: @queue_url, max_number_of_messages: 1) response..each do || send(.body, URI.parse(CGI.escape(@queue_url))) @sqs_client.( { queue_url: @queue_url, receipt_handle: .receipt_handle } ) end end |