In this article
Snap type: | Read | |||||||
---|---|---|---|---|---|---|---|---|
Description: | This Snap fetches messages from a RabbitMQ destination and acknowledges them.
| |||||||
Prerequisites: |
| |||||||
Support and limitations: | Works in Ultra Task Pipelines. | |||||||
Account: | This Snap uses account references created on the Accounts page of SnapLogic Manager to handle access to this endpoint. See Configuring RabbitMQ Accounts for information on setting up this type of account. | |||||||
Views: |
| |||||||
Settings | ||||||||
Label | Required. The name for the Snap. You can modify this to be more specific, especially if you have more than one of the same Snap in your pipeline. | |||||||
Exchange | Conditional. Name of the RabbitMQ exchange bound to the queue. If the exchange is not specified, then the default exchange provided by RabbitMQ is considered. Either Exchange or Queue has to be specified. | |||||||
Exchange type | The type of RabbitMQ exchange used to push messages. Options available include:
Default value: direct | |||||||
Durable Exchange | Whether or not the exchange is durable. Default Value: Selected | |||||||
Queue | Conditional. Name of the RabbitMQ queue from which messages have to be consumed. If there is no queue with given queue name on RabbitMQ, then a new queue is created and consumer starts listening. If the exchange name and routing key are also specified, then the queue is bound to the exchange with given routing key. Either Exchange or Queue has to be specified. | |||||||
Auto delete | Select this check box to indicate that the RabbitMQ autoDelete property associated with the existing queue is set to Default value: Deselected. | |||||||
Routing Key | Routing key to be used for binding the queue with the exchange | |||||||
Processing Mode | Specifies the mode of message processing. The options available include Synchronous and Asynchronous. Synchronous: When in synchronous mode, the consumer will process messages from the destination one at a time until a STOP is read or the Message Count is reached. If a message is not available, the consumer will retry for an available message at an interval of every 3 secs until the Message count is reached. For example, if the Queue sends 8 messages, and the Message count is set to 10, the consumer processes the 8 messages one after the other, and sleeps for every 3 seconds for the remaining two unavailable messages. Asynchronous: When in asynchronous mode, the consumer reads the messages from the destination whenever the message arrives until a 'STOP' is read or the Message Count is reached. The consumer registers a messagelistener asynchronously. It does not block, but calls (the processmessage) immediately once a message is available. Default value: Synchronous | |||||||
Message Acknowledge Mode | Required. Specifies the mode of message acknowledgement for non-transacted sessions. The available options are: AUTO_ACKNOWLEDGE - the session acknowledges the receipt of a message when a call to receive method or when the message listener returns successfully. PIPELINE_CONTROL- the client has the power when to acknowledge the message. Select the PIPELINE_CONTROL option when using the RabbitMQ Acknowledge Snap in a pipeline.
Default value: AUTO_ACKNOWLEDGE | |||||||
x-match | Specifies the x-match value to be submitted for binding. The available options are:
Default value: all Select x-match only when the Exchange type is header | |||||||
Header properties | Specifies the header properties that will be used to bind the queue with an exchange as arguments. Configure Header properties only when the Exchange type is headers. Only one Header can be specified in each row. Click to add a new row in this table and specify the values accordingly.This fieldset comprises the following fields:
| |||||||
Header key | Specifies the name of the header that is being used for the binding. | |||||||
Header value | Specifies the header value corresponding to the respective header key. | |||||||
Argument properties | Specifies the custom argument properties to ensure all declarations for the queues use the same configuration/options/arguments. Only one argument can be specified in each row. Click to add a new row in this table and specify the values accordingly.This fieldset comprises the following fields:
| |||||||
Argument key | Specifies the name of the argument used for declaration. See Optional Arguments in RabbitMQ documentation for more information. Example: Default value: None. | |||||||
Argument value | Specifies the value corresponding to the argument key. Example: Default value: None. | |||||||
Message Count | Controls the number of messages to be consumed from the destination queue before the consumer is stopped. Negative integer value, that is the default value of -1 makes the consumer run indefinitely. Possible values include:
Default value: -1 | |||||||
Maximum connection attempts | The maximum number of connection attempts in case of a connection failure. The Snap retries for the configured number of attempts for establishing the connection. If it exceeds the configured value, and the Route connection errors property is enabled, the messages are routed to the error view with the error information along with the original. When the Route connection errors property is disabled, the Snap displays the number of published messages along with the error information, however, the Snap fails. Default value: 3 | |||||||
Connection retry interval | The time taken in seconds to wait before retrying for another connection. Default value: 10 | |||||||
Route connection errors | If enabled, the Snap routes the connection errors to the error view displaying the error information along with the original. If disabled, the Snap fails to execute. Default value: Not selected | |||||||
Snap Execution | Indicates how the Snap must be executed. Available options are:
Default value: Validate & Execute |