Skip to main content

NATS Consumer

Overview

The NATS consumer plugin reads from the specified NATS subjects and creates metrics using one of the supported input data formats.

A Queue Group is used when subscribing to subjects so multiple instances of circonus-unified-agent can read from a NATS cluster in parallel.

Configuration

[[inputs.nats_consumer]]
## urls of NATS servers
servers = ["nats://localhost:4222"]

## subject(s) to consume
subjects = ["circonus"]

## name a queue group
queue_group = "circonus_consumers"

## Optional credentials
# username = ""
# password = ""

## Optional NATS 2.0 and NATS NGS compatible user credentials
# credentials = "/etc/circonus-unified-agent/nats.creds"

## Use Transport Layer Security
# secure = false

## Optional TLS Config
# tls_ca = "/etc/circonus-unified-agent/ca.pem"
# tls_cert = "/etc/circonus-unified-agent/cert.pem"
# tls_key = "/etc/circonus-unified-agent/key.pem"
## Use TLS but skip chain & host verification
# insecure_skip_verify = false

## Sets the limits for pending msgs and bytes for each subscription
## These shouldn't need to be adjusted except in very high throughput scenarios
# pending_message_limit = 65536
# pending_bytes_limit = 67108864

## Maximum messages to read from the broker that have not been written by an
## output. For best throughput set based on the number of metrics within
## each message and the size of the output's metric_batch_size.
##
## For example, if each message from the queue contains 10 metrics and the
## output metric_batch_size is 1000, setting this to 100 will ensure that a
## full batch is collected and the write is triggered immediately without
## waiting until the next flush_interval.
# max_undelivered_messages = 1000

## Data format to consume.
## Each data format has its own unique set of configuration options, read
## more about them here:
## https://github.com/circonus-labs/circonus-unified-agent/blob/master/docs/DATA_FORMATS_INPUT.md
data_format = "json"