NSQ
Last updated: 3 minutes read.
Subscribe to an NSQ instance topic and channel.
Common config fields
Showing common config fields and default values
input:
label: ""
nsq:
nsqd_tcp_addresses: [] # No default (required)
lookupd_http_addresses: [] # No default (required)
topic: "" # No default (required)
channel: "" # No default (required)
user_agent: "" # No default (optional)
max_in_flight: 100
max_attempts: 5
Advanced config fields
Showing all config fields and default values
input:
label: ""
nsq:
nsqd_tcp_addresses: [] # No default (required)
lookupd_http_addresses: [] # No default (required)
tls:
enabled: false
skip_cert_verify: false
enable_renegotiation: false
root_cas: ""
root_cas_file: ""
client_certs: []
topic: "" # No default (required)
channel: "" # No default (required)
user_agent: "" # No default (optional)
max_in_flight: 100
max_attempts: 5
Metadata
This input adds the following metadata fields to each message:
- nsq_attempts
- nsq_id
- nsq_nsqd_address
- nsq_timestamp
You can access these metadata fields using function interpolation.
Fields
nsqd_tcp_addresses
A list of nsqd daemon addresses to connect to.
Type: array
lookupd_http_addresses
A list of nsqlookupd addresses to connect to.
Type: array
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 of a certificate to use.
Type: string
Default: ""
tls.client_certs[].key_file
The path of a certificate key to use.
Type: string
Default: ""
tls.client_certs[].password
A plain text password for when the private key is password encrypted in PKCS#1 or PKCS#8 format. The obsolete pbeWithMD5AndDES-CBC
algorithm is not supported for the PKCS#8 format. Warning: Since it does not authenticate the ciphertext, it is vulnerable to padding oracle attacks that can let an attacker recover the plaintext.
Type: string
Default: ""
# Example
password: foo
topic
The topic to consume from.
Type: string
channel
The channel to consume from.
Type: string
user_agent
A user agent to assume when connecting.
Type: string
max_in_flight
The maximum number of pending messages to consume at any given time.
Type: int
Default: 100
max_attempts
The maximum number of attempts to successfully consume a messages.
Type: int
Default: 5