Back to Pilotfish Home

RabbitMQ Listener

RabbitMQ Listener Configuration

The RabbitMQ Listener listens to RabbitMQ Queue for any incoming messages.

The RabbitMQ Listener (Adapter) allows you to configure a RabbitMQ Listener from the Listener Type drop-down menu.

RabbitMQ Listener Configuration in PilotFish Integration Engine

Listener (Adapter) Configuration Drop-Down List

 

Connection RabbitMQ Listener Configuration Options

On the Connection tab, you can specify:

  • Connection Method – the method to use for the connection. The URI method is recommended for single server connections, while Host and Port is recommended for mirrored / HA server setups.
  • URI – URI of the RabbitMQ Provider (e.g., amqp: //localhost)
  • Host and Port – specify the Host and Port for each RabbitMQ Server in the form host:port (e.g., localhost 5672)
  • Virtual Host – virtual host to connect to
  • User Name – the User Name for the specified server (if required)
  • Password – the Password for the specified server (if required)
  • Use SSL? – check if SSL connection is required

RabbitMQ Listener Connection Configuration Options in PilotFish Engine

RabbitMQ Listener Connection Configuration Options

 

Consume RabbitMQ Listener Configuration Options

On the Consume tab, you can specify:

  • Queue – name of the queue to consume messages from
  • Exchange – name of the RabbitMQ Exchange
  • Mode – Point-to-Point (Queue) or Publish/Subscribe (Topic) style messaging
  • Topic Pattern – pattern for matching messages

RabbitMQ Listener Queue, Mode, Pattern Configuration Options in PilotFish Engine

RabbitMQ Listener Consume Configuration Options

 

Declare RabbitMQ Listener Configuration Options

The Declare configuration tab allows you to specify:

  • Durable – are messages durable (survive RabbitMQ server restart)
  • Exclusive – queue is exclusive to this connection
  • Auto-Delete – queue deleted when not in use
  • Message TTL – how long a message published to a queue can live before it is discarded (milliseconds)
  • Auto Expire – how long a queue can be unused before it is automatically deleted (milliseconds)
  • Max Length – how long a queue can be unused before it is automatically deleted (milliseconds)
  • Dead Letter Exchange – the name of the exchange to send rejected messages to (must be set at the time queue is created)

RabbitMQ Listener Durability for Exchanges Configuration Options in PilotFish Engine

RabbitMQ Listener Declare Configuration Options

 

Advanced RabbitMQ Listener Configuration Options

The Advanced tab allows you to specify:

  • Synchronous Acknowledge – if enabled, message acknowledgment will not be sent until transport confirms that it has been processed
  • Timeout – the maximum time allowed for the message to be processed before timing out and rejecting the message
  • Max Concurrent Messages – the maximum number of sync ack messages that should be processed simultaneously
  • Shutdown Timeout – the time allowed between ACK and NACK_REQUEUE before shutting down the Listener; or -1 if no limit
  • Restart After Shutdown Delay – the delay before starting the listener back up, or -1 to not restart
  • Prefetch Count – the maximum number of messages that the server will deliver; 0 if unlimited
  • Automatic Recovery – if network failures should automatically be recovered
  • Recovery Interval – the interval between network recovery attempts

RabbitMQ Advanced Listener Configuration Options

RabbitMQ Advanced Configuration Options (top half of screen)

 

  • Heartbeat – if the heartbeat feature should be enabled
  • Heartbeat Interval – the interval for heartbeat checks
  • Requeue Delay – the time delay before requeueing after a NACK_REQUEUE. Defaults to 0 seconds which means to immediately requeue without delay. If the value is set with enhanced properties, the units are seconds.
  • Initialize on Trigger Only – if enabled, the Listener doesn’t start up until a trigger initializes it
  • Allow Command-Line Invocation – If enabled, the listener can be invoked using the CLI client application
  • Restart on Listening Error – if enabled, the listener will be restarted after an error occurs
  • FIFO Queue Name – the FIFO option enables a “First In, First Out” queuing mechanism between Listeners and Transports. If a FIFO Queue Name is provided, it will be used as a key for a transaction queue. Transactions will be written to this queue before they reach a Transport. The transactions in this queue will be ordered according to when they were created by the Listener.
  • FIFO Queue Delay – it is the interval between updates/checks against that queue. Providing a queue name guarantees that a given Transport sends transactions in the same order the Listener created them in.

RabbitMQ Listener/Adapter Advanced Configuration Options in PilotFish

RabbitMQ Advanced Configuration Options (bottom half of screen)

 

Transaction Logging RabbitMQ Listener Configuration Options

On the Transaction Logging tab, you can enable transaction events logging. That data can be logged by a Transaction Event Listener (TransactionEventListener).

  • Transaction Logging Enable – this checkbox allows transaction events originating from this listener to be logged by a Transaction Event Listener (TransactionEventListener)
  • Log Transaction Data – if enabled, logs transaction data body
  • Log Transaction Data Base64 – if enabled, logs transaction data body as Base64
  • Log Transaction Attribute – if enabled, logs transaction attributes
  • Log All Attributes – if enabled, no attributes will be filtered
  • Allowed Attributes – attributes that are allowed to be logged

RabbitMQ Transaction Logging Options in PilotFish Integration Engine

RabbitMQ Listener Transaction Logging Configuration Options

 

Inactivity RabbitMQ Listener Configuration Options

On the Inactivity tab you can specify:

  • Enable Inactivity Monitor – check this box to enable inactivity monitoring – this will throw a non-transaction exception if the specified number of transactions haven’t been processed in the specified time interval
  • Minimum Transactions to Expect – the number of transactions to expect to be completed per monitoring interval
  • Monitoring Interval – how often to check the specified number of transactions have been processed
  • Times to Monitor – if set, monitoring will be done during the defined times of day – to ignore, set start and end time equally
  • Days to Exclude from Monitoring – inactivity monitoring will not occur on the days specified
  • Include Errors in Transaction Count – if checked, transactions that attempted to start but failed at the Listener stage will also be counted

RabbitMQ Listener or Adapter Inactivity Configuration Options

RabbitMQ Listener Inactivity Configuration Options

 

Throttling RabbitMQ Listener Configuration Options

On the Throttling tab, you can specify:

  • Throttling Mode – the throttling mode to use for limiting the number of transactions or messages emitted by this Listener. “Timed” will limit transactions based on time intervals, while “Concurrent” will limit based on a concurrent number of transactions. “Concurrent” mode requires a Throttling Response Processor step later in your Interface workflow to acknowledge completion.

RabbitMQ Listener Throttling Mode Selections

RabbitMQ Listener Throttling Mode

 

  • Throttling Mechanism – the mechanism to use for throttling messages. “Blocking” prevents the Listener from continuing to process and emit messages altogether, while “Queued” pushes received messages into the interface queue (or a default, in-memory queue).
  • Max Concurrent Messages – how many messages can be concurrently processed, either by time-based limits (“Allow X per Second”) or synchronous (“Allow X at any Time”)
  • Timed Emission Interval – the interval for time-based limits (“Allow X per X Timed Emission Interval”)
  • Synchronous Timeout Interval – the interval to wait for a synchronous response before failing

Throttling Configuration Options for RabbitMQ Adapter or Listener in PilotFish Integration Engine

RabbitMQ Listener Throttling Configuration Options

If you’re curious about the software features, free trial, or even a demo – we’re ready to answer any and all questions. Please call us at 813 864 8662 or click the button.

This is a unique website which will require a more modern browser to work! Please upgrade today!