socket

Connects to a tcp or unix socket and consumes a continuous stream of messages.

# Config fields, showing default values
input:
  label: ""
  socket:
    network: "" # No default (required)
    address: /tmp/benthos.sock # No default (required)
    auto_replay_nacks: true
    scanner:
      lines: {}

Fields

address

The address to connect to.

Type: string

# Examples:
address: /tmp/benthos.sock
address: 127.0.0.1:6000

auto_replay_nacks

Whether messages that are rejected (nacked) at the output level should be automatically replayed indefinitely, eventually resulting in back pressure if the cause of the rejections is persistent. If set to false these messages will instead be deleted. Disabling auto replays can greatly improve memory efficiency of high throughput streams as the original shape of the data can be discarded immediately upon consumption and mutation.

Type: bool

Default: true

network

A network type to assume (unix|tcp).

Type: string

Options: unix, tcp

open_message_mapping

An optional Bloblang mapping which should evaluate to a string which will be sent upstream before the downstream data flow starts.

Type: string

# Examples:
open_message_mapping: root = "username,password"

scanner

The scanner by which the stream of bytes consumed will be broken out into individual messages. Scanners are useful for processing large sources of data without holding the entirety of it within memory. For example, the csv scanner allows you to process individual CSV rows without loading the entire CSV file in memory at once.

Requires version 4.25.0 or later.

Type: scanner

Default:

lines: {}