Synadia Connect
AMQP 0.9
Sends messages to an AMQP (0.91) exchange.
AMQP is a messaging protocol used by various message brokers, including RabbitMQ. The metadata from each message are delivered as headers.
It's possible for this output type to create the target exchange by setting exchange_declare.enabled to true, if the exchange already exists then the declaration passively verifies that the settings match.
TLS is automatic when connecting to an amqps URL, but custom settings can be enabled in the tls section.
Configuration
| Name | Type | Optional | Secret | Description |
|---|---|---|---|---|
| urls | []string | no | no | A list of URLs to connect to. The first URL to successfully establish a connection will be used until the connection is closed. If an item of the list contains commas it will be expanded into multiple URLs. |
| exchange | expression | no | no | An AMQP exchange to publish to. |
| exchange_declare | exchange_declare | yes | no | Optionally declare the target exchange (passive). |
| key | expression | yes | no | The binding key to set for each message. The value defaults to "". |
| type | expression | yes | no | The type property to set for each message. The value defaults to "". |
| content_type | string | yes | no | The content type attribute to set for each message. The value defaults to "application/octet-stream". |
| content_encoding | string | yes | no | The content encoding attribute to set for each message. The value defaults to "". |
| correlation_id | string | yes | no | Set the correlation ID of each message with a dynamic interpolated expression. The value defaults to "". |
| reply_to | string | yes | no | Carries response queue name - set with a dynamic interpolated expression. The value defaults to "". |
| expiration | string | yes | no | Set the per-message TTL. The value defaults to "". |
| message_id | string | yes | no | Set the message ID of each message with a dynamic interpolated expression. The value defaults to "". |
| user_id | string | yes | no | Set the user ID to the name of the publisher. If this property is set by a publisher, its value must be equal to the name of the user used to open the connection. The value defaults to "". |
| app_id | string | yes | no | Set the application ID of each message with a dynamic interpolated expression. The value defaults to "". |
| metadata | metadata | no | no | Specify criteria for which metadata values are attached to messages as headers. |
| priority | expression | yes | no | Set the priority of each message with a dynamic interpolated expression. The value defaults to "". |
| max_in_flight | int | yes | no | The maximum number of messages to have in flight at a given time. Increasing the max in flight might improve throughput. However, if message ordering needs to be guaranteed, then this should be set to 1. . The value defaults to 64. |
| persistent | bool | yes | no | Whether message delivery should be persistent (transient by default). The value defaults to false. |
| mandatory | bool | yes | no | Whether to set the mandatory flag on published messages. When set if a published message is routed to zero queues it is returned. The value defaults to false. |
| immediate | bool | yes | no | Whether to set the immediate flag on published messages. When set if there are no ready consumers of a queue then the message is dropped instead of waiting. The value defaults to false. |
| timeout | string | yes | no | The maximum period to wait before abandoning it and reattempting. If not set, wait indefinitely. The value defaults to "". |
| tls | tls | no | no | Custom TLS settings can be used to override system defaults. |
Declare Exchange
| Name | Type | Optional | Secret | Description |
|---|---|---|---|---|
| enabled | bool | yes | no | Whether to declare the exchange. The value defaults to false. |
| type | string | yes | no | The type of the exchange. The value should be one of direct, fanout, topic or x-custom. The value defaults to "direct". |
| durable | bool | yes | no | Whether the exchange should be durable. The value defaults to true. |
Metadata
| Name | Type | Optional | Secret | Description |
|---|---|---|---|---|
| exclude_prefixes | []string | yes | no | Provide a list of explicit metadata key prefixes to be excluded when adding metadata to sent messages. The value defaults to []. |
TLS Configuration
| Name | Type | Optional | Secret | Description |
|---|---|---|---|---|
| enabled | bool | yes | no | Whether custom TLS settings are enabled. The value defaults to false. |
| skip_cert_verify | bool | yes | no | Whether to skip server side certificate verification. The value defaults to false. |
| enable_renegotiation | bool | yes | no | Whether to allow the remote server to repeatedly request renegotiation. |
Enable this option if you're seeing the error message local error: tls: no renegotiation. The value defaults to false. | ||||
| root_cas | string | yes | yes | An optional root certificate authority to use. |
| This is a string, representing a certificate chain from the parent trusted root certificate, | ||||
to possible intermediate signing certificates, to the host certificate. The value defaults to "". | ||||
| client_certs | []client_certs | yes | no | A list of client certificates to use. . The value defaults to []. |