Inputs
An input is a source of data piped through an array of optional processors:
Some inputs have a logical end, for example a csv
input ends once the last row is consumed, when this happens the input gracefully terminates and Benthos will shut itself down once all messages have been processed fully.
It's also possible to specify a logical end for an input that otherwise doesn't have one with the read_until
input, which checks a condition against each consumed message in order to determine whether it should be the last.
#
BrokeringOnly one input is configured at the root of a Benthos config. However, the root input can be a broker which combines multiple inputs and merges the streams:
#
Sequential ReadsSometimes it's useful to consume a sequence of inputs, where an input is only consumed once its predecessor is drained fully, you can achieve this with the sequence
input.
#
Generating MessagesSometimes it's useful to generate data, in which case the most convenient option is the bloblang
input.
#
Categories- Services
- Network
- AWS
- GCP
- Local
- Utility
- Azure
Inputs that consume from storage or message streaming services.
amqp_0_9amqp_1aws_kinesisaws_s3aws_sqsazure_blob_storagegcp_pubsubhdfskafkakinesismqttnatsnats_streamnsqredis_listredis_pubsubredis_streamss3sqsInputs that consume directly from low level network protocols.
http_clienthttp_servernanomsgsocketsocket_serverwebsocketzmq4Inputs that consume from Google Cloud Platform services.
gcp_pubsubInputs that provide utility by generating data or combining/wrapping other inputs.
bloblangbrokerdynamicinprocread_untilresourcesequencesubprocess