NATS

Configuration Options

Required Options

url(required)

The NATS URL to connect to. The url must take the form of nats://server:port.

TypeSyntaxDefaultExample
stringliteral["nats://demo.nats.io","nats://127.0.0.1:4222"]
subject(required)

The NATS subject to publish messages to.

TypeSyntaxDefaultExample
stringtemplate["{{ host }}","foo","time.us.east","time.*.east","time.>",">"]
inputs(required)

A list of upstream source or transform IDs. Wildcards (*) are supported.

See configuration for more info.

TypeSyntaxDefaultExample
arrayliteral["my-source-or-transform-id","prefix-*"]
encoding(required)

Configures the encoding specific sink behavior.

TypeSyntaxDefaultExample
hashliteral[]
type(required)

The component type. This is a required field for all components and tells Vector which component to use.

TypeSyntaxDefaultExample
stringliteral["nats"]

Advanced Options

healthcheck(optional)

Health check options for the sink.

TypeSyntaxDefaultExample
hash[]
connection_name(optional)

A name assigned to the NATS connection.

TypeSyntaxDefaultExample
stringliteralvector["foo","API Name Option Example"]

How it Works

nats.rs

The nats source/sink uses nats.rs under the hood.

State

This component is stateless, meaning its behavior is consistent across each input.

Health checks

Health checks ensure that the downstream service is accessible and ready to accept data. This check is performed upon sink initialization. If the health check fails an error will be logged and Vector will proceed to start.