Amazon SQS

Most recent version: v0.0.1

See the changelog of this Listener type here.

Overview

Onum supports integration with Amazon SQS.

Amazon Simple Queue Service (AWS SQS) is a fully managed message queuing service. Among its many features, the following ones are of special interest to our use case:

  • It supports both standard queues (with at-least-once, occasionally unordered delivery semantics) and FIFO queues (exactly-once and fully ordered delivery semantics).

  • It supports scaling through the concept of visibility timeout (a period after a consumer reads one message during which this becomes invisible to other consumers). That allows a consumer group to read from the same queue and distribute messages without duplication.

So, what we want is a Listener that we can configure to read from an existing SQS queue and inject queue messages as events into our platform. Please note that because of the nature of the API offered to access SQS messages (HTTP-based, max 10 messages each time), this is not a high-throughput Listener.

Select Amazon SQS from the list of Listener types and click Configuration to start.

Configuration

Now you need to specify how and where to collect the data, and how to establish a connection with Amazon SQS.

Metadata

Enter the basic information for the new Listener.

Parameter
Description

Name*

Enter a name for the new Listener.

Description

Optionally, enter a description for the Listener.

Tags

Add tags to easily identify your Listener. Hit the Enter key after you define each tag.

Configuration

Now, add the configuration to establish the connection.

Queue

Parameter
Description

Region

The region of your AWS data center. Your region is displayed in the top right-hand corner of your AWS console.

Queue URL*

The URL of your existing Amazon SQS queue, acting as the endpoint to interact with the desired queue. Use the GetQueueUrl command or:

  1. Go to the AWS Management Console.

  2. In the Search Bar, type "SQS" and click on Simple Queue Service (SQS).

  3. Click on Queues in the left panel.

  4. Locate your queue from the list and click it.

  5. The Queue URL will be displayed in the table under URL.

This is the correct URL format: sqs.region.localhost/awsaccountnumber/storedinenvv

Auth

Authentication is not specific to SQS but rather AWS IAM (Identity and Access Management). If you are connecting from an IAM console, enter the authentication credentials here.

Parameter
Description

Access key ID*

Add the access key from your Secrets or create one. The Access Key ID is found in the IAM Dashboard of the AWS Management Console.

  1. In the left panel, click on Users.

  2. Select your IAM user.

  3. Under the Security Credentials tab, scroll to Access Keys and you will find existing Access Key IDs (but not the secret access key).

Secret access key*

Add the secret access key from your Secrets or create one.

Under Access keys, you can see your Access Key IDs, but AWS will not show the Secret Access Key. You must have it saved somewhere. If you don't have the secret key saved, you need to create a new one

Response

Parameter
Description

Message system attributes

Optionally, specify which system attributes are wanted in the response. The set of system attributes chosen by the user correspond to attributes inlined in the message/event.

  1. In the Queues area, click on More or scroll down and go to the Monitoring tab.

  2. You will see some system attributes (like deduplication and group ID). However, detailed system attributes are typically accessed via the CLI or SDKs.

Advanced

Parameters
Description

Maximum number of messages*

Set a limit for the maximum number of messages to receive in the notifications queue for each request. The minimum value is 1, and the maximum and default value is 10.

Visibility timeout*

Set a limit for the maximum number of messages to receive in the notifications queue for each request. The minimum value is 1, and the maximum and default value is 10.

Wait time*

Set a limit for the maximum number of messages to receive in the notifications queue for each request. The minimum value is 5, and the maximum and default value is 10.

Minimum retry time*

Set the minimum amount of time to wait before retrying. The default and minimum value is 1s, and the maximum value is 10m.

Maximum retry time*

Set the minimum amount of time to wait before retrying. The default and minimum value is 1s, and the maximum value is 10m.

Click Create labels to move on to the next step and define the required Labels if needed.

Last updated

Was this helpful?