ConsumeAMQP

Description:

Consumes AMQP Messages from an AMQP Broker using the AMQP 0.9.1 protocol. Each message that is received from the AMQP Broker will be emitted as its own FlowFile to the 'success' relationship.

Additional Details...

Tags:

amqp, rabbit, get, message, receive, consume

Properties:

In the list below, the names of required properties appear in bold. Any other properties (not in bold) are considered optional. The table also indicates any default values, whether a property supports the NiFi Expression Language, and whether a property is considered "sensitive", meaning that its value will be encrypted. Before entering a value in a sensitive property, ensure that the nifi.properties file has an entry for the property nifi.sensitive.props.key.

NameDefault ValueAllowable ValuesDescription
QueueThe name of the existing AMQP Queue from which messages will be consumed. Usually pre-defined by AMQP administrator.
Auto-Acknowledge Messagesfalse
  • true
  • false
If false (Non-Auto-Acknowledge), the messages will be acknowledged by the processor after transferring the FlowFiles to success and committing the NiFi session. Non-Auto-Acknowledge mode provides 'at-least-once' delivery semantics. If true (Auto-Acknowledge), messages that are delivered to the AMQP Client will be auto-acknowledged by the AMQP Broker just after sending them out. This generally will provide better throughput but will also result in messages being lost upon restart/crash of the AMQP Broker, NiFi or the processor. Auto-Acknowledge mode provides 'at-most-once' delivery semantics and it is recommended only if loosing messages is acceptable.
Batch Size10The maximum number of messages that should be processed in a single session. Once this many messages have been received (or once no more messages are readily available), the messages received will be transferred to the 'success' relationship and the messages will be acknowledged to the AMQP Broker. Setting this value to a larger number could result in better performance, particularly for very small messages, but can also result in more messages being duplicated upon sudden restart of NiFi.
BrokersA comma-separated list of known AMQP Brokers in the format <host>:<port> (e.g., localhost:5672). If this is set, Host Name and Port are ignored. Only include hosts from the same AMQP cluster.
Supports Expression Language: true (will be evaluated using variable registry only)
Host NamelocalhostNetwork address of AMQP broker (e.g., localhost). If Brokers is set, then this property is ignored.
Supports Expression Language: true (will be evaluated using variable registry only)
Port5672Numeric value identifying Port of AMQP broker (e.g., 5671). If Brokers is set, then this property is ignored.
Supports Expression Language: true (will be evaluated using variable registry only)
Virtual HostVirtual Host name which segregates AMQP system for enhanced security.
Supports Expression Language: true (will be evaluated using variable registry only)
User NameUser Name used for authentication and authorization.
Supports Expression Language: true (will be evaluated using variable registry only)
PasswordPassword used for authentication and authorization.
Sensitive Property: true
AMQP Version0.9.1
  • 0.9.1
AMQP Version. Currently only supports AMQP v0.9.1.
SSL Context ServiceController Service API:
SSLContextService
Implementations: StandardSSLContextService
StandardRestrictedSSLContextService
The SSL Context Service used to provide client certificate information for TLS/SSL connections.
Use Client Certificate Authenticationfalse
  • true
  • false
Authenticate using the SSL certificate rather than user name/password.
Client AuthNONE
  • WANT
  • REQUIRED
  • NONE
The property has no effect and therefore deprecated.

Relationships:

NameDescription
successAll FlowFiles that are received from the AMQP queue are routed to this relationship

Reads Attributes:

None specified.

Writes Attributes:

NameDescription
amqp$appIdThe App ID field from the AMQP Message
amqp$contentEncodingThe Content Encoding reported by the AMQP Message
amqp$contentTypeThe Content Type reported by the AMQP Message
amqp$headersThe headers present on the AMQP Message
amqp$deliveryModeThe numeric indicator for the Message's Delivery Mode
amqp$priorityThe Message priority
amqp$correlationIdThe Message's Correlation ID
amqp$replyToThe value of the Message's Reply-To field
amqp$expirationThe Message Expiration
amqp$messageIdThe unique ID of the Message
amqp$timestampThe timestamp of the Message, as the number of milliseconds since epoch
amqp$typeThe type of message
amqp$userIdThe ID of the user
amqp$clusterIdThe ID of the AMQP Cluster
amqp$routingKeyThe routingKey of the AMQP Message
amqp$exchangeThe exchange from which AMQP Message was received

State management:

This component does not store state.

Restricted:

This component is not restricted.

Input requirement:

This component does not allow an incoming relationship.

System Resource Considerations:

None specified.