PublishAMQP
Description
Creates an AMQP Message from the contents of a FlowFile and sends the message to an AMQP Exchange. In a typical AMQP exchange model, the message that is sent to the AMQP Exchange will be routed based on the 'Routing Key' to its final destination in the queue (the binding). If due to some misconfiguration the binding between the Exchange, Routing Key and Queue is not set up, the message will have no final destination and will return (i.e., the data will not make it to the queue). If that happens you will see a log in both app-log and bulletin stating to that effect, and the FlowFile will be routed to the 'failure' relationship.
Tags
amqp, message, publish, put, rabbit, send
Properties
In the list below required Properties are shown with an asterisk (*). Other properties are considered optional. The table also indicates any default values, and whether a property supports the NiFi Expression Language.
Display Name | API Name | Default Value | Allowable Values | Description |
---|---|---|---|---|
Exchange Name * | Exchange Name | The name of the AMQP Exchange the messages will be sent to. Usually provided by the AMQP administrator (e.g., 'amq.direct'). It is an optional property. If kept empty the messages will be sent to a default AMQP exchange. Supports Expression Language, using FlowFile attributes and Environment variables. | ||
Routing Key * | Routing Key | The name of the Routing Key that will be used by AMQP to route messages from the exchange to a destination queue(s). Usually provided by the administrator (e.g., 'myKey')In the event when messages are sent to a default exchange this property corresponds to a destination queue name, otherwise a binding from the Exchange to a Queue via Routing Key must be set (usually by the AMQP administrator) Supports Expression Language, using FlowFile attributes and Environment variables. | ||
Headers Source * | Headers Source | AMQP Headers Attribute |
| The source of the headers which will be applied to the published message. |
Headers Pattern * | Headers Pattern | Regular expression that will be evaluated against the FlowFile attributes to select the matching attributes and put as AMQP headers. Attribute name will be used as header key. Supports Expression Language, using Environment variables. This property is only considered if:
| ||
Header Separator | header.separator | , | The character that is used to split key-value for headers. The value must only one character. Otherwise you will get an error message This property is only considered if:
| |
Brokers | Brokers | A 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, using Environment variables. | ||
Host Name | Host Name | localhost | Network address of AMQP broker (e.g., localhost). If Brokers is set, then this property is ignored. Supports Expression Language, using Environment variables. | |
Port | Port | 5672 | Numeric value identifying Port of AMQP broker (e.g., 5671). If Brokers is set, then this property is ignored. Supports Expression Language, using Environment variables. | |
Virtual Host | Virtual Host | Virtual Host name which segregates AMQP system for enhanced security. Supports Expression Language, using Environment variables. | ||
User Name | User Name | User Name used for authentication and authorization. Supports Expression Language, using Environment variables. | ||
Password | Password | Password used for authentication and authorization. | ||
AMQP Version * | AMQP Version | 0.9.1 |
| AMQP Version. Currently only supports AMQP v0.9.1. |
SSL Context Service | ssl-context-service | Controller Service: SSLContextService Implementations: StandardRestrictedSSLContextService StandardSSLContextService | The SSL Context Service used to provide client certificate information for TLS/SSL connections. | |
Use Client Certificate Authentication | cert-authentication | false |
| Authenticate using the SSL certificate rather than user name/password. |
Dynamic Properties
This component does not support dynamic properties.
Relationships
Name | Description |
---|---|
failure | All FlowFiles that cannot be routed to the AMQP destination are routed to this relationship |
success | All FlowFiles that are sent to the AMQP destination are routed to this relationship |
Reads Attributes
Name | Description |
---|---|
amqp$appId | The App ID field to set on the AMQP Message |
amqp$clusterId | The ID of the AMQP Cluster |
amqp$contentEncoding | The Content Encoding to set on the AMQP Message |
amqp$contentType | The Content Type to set on the AMQP Message |
amqp$correlationId | The Message's Correlation ID |
amqp$deliveryMode | The numeric indicator for the Message's Delivery Mode |
amqp$expiration | The Message Expiration |
amqp$headers | The headers to set on the AMQP Message, if 'Header Source' is set to use it. See additional details of the processor. |
amqp$messageId | The unique ID of the Message |
amqp$priority | The Message priority |
amqp$replyTo | The value of the Message's Reply-To field |
amqp$timestamp | The timestamp of the Message, as the number of milliseconds since epoch |
amqp$type | The type of message |
amqp$userId | The ID of the user |
Writes Attributes
This processor does not write attributes.
State Management
This component does not store state.
Restricted
This component is not restricted.
Input Requirement
This component requires an incoming relationship.
System Resource Considerations
Scope | Description |
---|---|
MEMORY | An instance of this component can cause high usage of this system resource. Multiple instances or high concurrency settings may result a degradation of performance. |