Skip to content

Reducer

Same shape as Reporter advisor — discovery snapshot plus choices yield a structured install plan. Two differences: the Reducer actively modifies events in flight (mute / sample), and an optimize flag turns on lossless Compact mode — ~20–40× volume reduction per event.

Example

"Reducer into logging, fluent-bit, optimize=true, ship to Splunk"

# values.yaml
tenx:
  optimize: true
log10x:
  apiKey: lx_live_...
  destination: splunk
  outputHost: splunk-hec.acme.com:8088
  splunkHecToken: xxxx
helm upgrade --install my-reducer log10x/fluent-bit-10x \
  --namespace logging -f values.yaml

# Verify compact output is flowing
kubectl -n logging logs ds/my-reducer -c log10x-sidecar | grep '"log":"~'
  # expect: lines starting with "~<templateHash>,<ts>,..."

More to ask

  • "plain Reducer, no optimize, mock destination, smoke test"
  • "Reducer into obs namespace, ship to CloudWatch"
  • "verify probes for my-reducer"

Prerequisites

A fresh snapshot_id from Discover env.

Tool schema (advanced)
Field Type Required Default Description
snapshot_id string yes ID returned by Discover env. Cached for 30 min.
forwarder string no detected fluent-bit / fluentd / filebeat / logstash / otel-collector.
release_name string no my-reducer Helm release name.
namespace string no snapshot's suggested namespace Target namespace.
api_key string no Log10x license key. Required for complete install plan.
destination string no auto, mock if none mock / elasticsearch / splunk / datadog / cloudwatch. Auto-detected from env when exactly one set of log-analyzer creds is present; falls back to mock when nothing is detected; returns "ambiguous" when multiple are detected.
output_host string no Host for non-mock destinations.
splunk_hec_token string when destination=splunk HEC token.
optimize boolean no false Emit compact encoded events (~20–40× volume reduction). Verified on all 5 forwarders (fluent-bit, fluentd, filebeat, logstash, otel-collector) at chart 1.0.8 + engine 1.0.9.
action string no all install, verify, teardown, all.

Optimize-flag mechanics: with engine 1.0.9 + chart 1.0.8 the rendered values.yaml sets tenx.optimize: true directly. The chart wires tenx-optimize.lua and tenx-optimize-unix.conf from the engine image; the engine reads the flag and turns on encodeObjects=true in its regulate config. An env-var fallback (env: [{name: reducerOptimize, value: "true"}]) still works on older images for compat.

Optimize support: verified across all 5 forwarders — fluent-bit, fluentd, filebeat, logstash, otel-collector — at chart 1.0.8 + engine 1.0.9. Other blockers (missing api_key, filebeat with output.console corrupting the stdout pipe) behave as in the Reporter advisor.