Skip to content

Forward Protocol Input

Reads events via the Fluent Forward protocol on a Unix domain socket.

Supports all standard Forward protocol modes:

  • Message: [tag, time, record]
  • Forward: [tag, [[time, record], ...]]
  • PackedForward: [tag, packed_entries_bin]

Each record is decoded from msgpack and emitted as a JSON line with the Forward tag injected as a "tag" field.

Config Files

To configure the Forward protocol input module, Edit these files.

Below is the default configuration from: forward/config.yaml.

Edit Online

Edit config.yaml Locally

# 🔟❎ 'run' Forward protocol input configuration
#
# Configure an input that receives events via the Fluent Forward protocol
# on a Unix domain socket. To learn more see https://doc.log10x.com/run/input/forward/

# Set the 10x pipeline to 'run'
tenx: run

# =============================== Dependencies ================================

include: run/modules/input/forward

# ======================== Forward Protocol Options ============================

forward:

  # ----------------------------- Input Options -----------------------------

  # 'inputPort' specifies the TCP port to listen on for Forward protocol messages
  inputPort: $=TenXEnv.get("TENX_FORWARD_INPUT_SOCKET", "24224")

  # 'inputPath' specifies a Unix domain socket path to listen on instead of TCP.
  #  When set, takes precedence over 'inputPort'.
  inputPath: $=TenXEnv.get("TENX_FORWARD_INPUT_ADDRESS", "")

  # ---------------------------- Parsing Options ----------------------------

  # 'extractors' defines a list of JSON/regex extractor names
  #  used to capture and redact event values from 'path' to transform
  #  into TenXObjects. To learn more see: https://doc.log10x.com/run/input/extract
  extractors: [
  ]

  # 'sourcePattern' defines a regex pattern that captures a 'source' value
  #  for each event received via the Forward protocol and transformed into
  #  a TenXObject. The Forward tag is injected as a "tag" field in each
  #  record, so the default pattern extracts the source from the tag.
  sourcePattern: null

Options

Specify the options below to configure the Forward protocol input:

Name Description
forwardInputPort TCP port for Forward protocol input
forwardInputPath Unix socket path for Forward protocol input (overrides port)
forwardSourcePattern Event source capture regex pattern

forwardInputPort

TCP port for Forward protocol input.

Type Default
String 24224

TCP port where Log10x listens for incoming Fluent Forward protocol messages.

Supports all standard Forward protocol modes (Message, Forward, PackedForward). Each incoming record is decoded from msgpack and emitted as JSON for the pipeline.

Example: 24224.

forwardInputPath

Unix socket path for Forward protocol input (overrides port).

Type Default
String ""

Unix domain socket path where Log10x listens for incoming Fluent Forward protocol messages. When set, takes precedence over the TCP port.

Example: /tmp/tenx-forward-in.sock.

forwardSourcePattern

Event source capture regex pattern.

Type Default
String "tag":"(.*?)"

Defines a regex pattern to capture 'source' values for each transformed TenXObject. The Forward protocol tag is injected into each record as a "tag" field. The default pattern extracts this tag as the event source.


This module is defined in forward/module.yaml.