Skip to main content

amqp_1

BETA

This component is mostly stable but breaking changes could still be made outside of major version releases if a fundamental problem with the component is found.

Sends messages to an AMQP (1.0) server.

# Common config fields, showing default values
output:
label: ""
amqp_1:
url: ""
target_address: ""
max_in_flight: 1
metadata:
exclude_prefixes: []

Metadata​

Message metadata is added to each AMQP message as string annotations. In order to control which metadata keys are added use the metadata config field.

Performance​

This output benefits from sending multiple messages in flight in parallel for improved performance. You can tune the max number of in flight messages with the field max_in_flight.

Fields​

url​

A URL to connect to.

Type: string
Default: ""

# Examples
url: amqp://localhost:5672/
url: amqps://guest:guest@localhost:5672/

target_address​

The target address to write to.

Type: string
Default: ""

# Examples
target_address: /foo
target_address: queue:/bar
target_address: topic:/baz

max_in_flight​

The maximum number of messages to have in flight at a given time. Increase this to improve throughput.

Type: int
Default: 1

tls​

Custom TLS settings can be used to override system defaults.

Type: object

tls.enabled​

Whether custom TLS settings are enabled.

Type: bool
Default: false

tls.skip_cert_verify​

Whether to skip server side certificate verification.

Type: bool
Default: false

tls.enable_renegotiation​

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.

Type: bool
Default: false
Requires version 3.45.0 or newer

tls.root_cas​

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.

Type: string
Default: ""

# Examples
root_cas: |-
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----

tls.root_cas_file​

An optional path of a root certificate authority file to use. This is a file, often with a .pem extension, containing a certificate chain from the parent trusted root certificate, to possible intermediate signing certificates, to the host certificate.

Type: string
Default: ""

# Examples
root_cas_file: ./root_cas.pem

tls.client_certs​

A list of client certificates to use. For each certificate either the fields cert and key, or cert_file and key_file should be specified, but not both.

Type: array
Default: []

# Examples
client_certs:
- cert: foo
key: bar
client_certs:
- cert_file: ./example.pem
key_file: ./example.key

tls.client_certs[].cert​

A plain text certificate to use.

Type: string
Default: ""

tls.client_certs[].key​

A plain text certificate key to use.

Type: string
Default: ""

tls.client_certs[].cert_file​

The path to a certificate to use.

Type: string
Default: ""

tls.client_certs[].key_file​

The path of a certificate key to use.

Type: string
Default: ""

sasl​

Enables SASL authentication.

Type: object

sasl.mechanism​

The SASL authentication mechanism to use.

Type: string
Default: "none"

OptionSummary
noneNo SASL based authentication.
plainPlain text SASL authentication.

sasl.user​

A SASL plain text username. It is recommended that you use environment variables to populate this field.

Type: string
Default: ""

# Examples
user: ${USER}

sasl.password​

A SASL plain text password. It is recommended that you use environment variables to populate this field.

Type: string
Default: ""

# Examples
password: ${PASSWORD}

metadata​

Specify criteria for which metadata values are attached to messages as headers.

Type: object

metadata.exclude_prefixes​

Provide a list of explicit metadata key prefixes to be excluded when adding metadata to sent messages.

Type: array
Default: []