Runtime Model

Pick the right runtime shape: embedded Python, embedded C++, IO module, local agent, or Kubernetes deployment.

BlazeRules has one rule engine and several ways to feed it.

RuntimeWhat it isUse it when
blazerules Python moduleDirect Python binding to the engine.Your app already controls batching or uses PyArrow/JSON.
C++ libraryNative API for embedding in a service.You want the engine inside a C++ process.
blazerules_ioKafka, binary decoders, file readers, CDC helpers.You need broker/file/format adapters but still own the loop.
blazerules_agentLocal ingest binary for HTTP, stdin, and file tails.You want a small local collector without writing code.
blazerules_dashboardRead-only UI over decision/DLQ/metrics/result files.You want to inspect decisions and failures locally.
Helm chartAgent DaemonSet plus dashboard Deployment.You want node-local Kubernetes log collection.

Embedded Python

import blazerules

engine = blazerules.RuleEngine()
engine.load_rules("rules.yaml")
result = engine.evaluate_ndjson(payload)

Use this when your application already has events in memory and can call the engine once per batch.

IO Module

import blazerules_io

payload = blazerules_io.read_ndjson_bytes("s3://bucket/events/day.ndjson")

Use this when you need file, Kafka, CDC, or binary decoding helpers but still want your application to own control flow.

Agent

blazerules_agent --rules rules.yaml --input http --port 9480 --output ndjson --output-path decisions.ndjson

Use the agent for local log-style ingestion: HTTP /v1/logs, stdin, or file tails. The agent still evaluates in batches; it is not a per-record rule server.

Dashboard

blazerules_dashboard \
  --decision-log decisions.ndjson \
  --dead-letter-log dead_letters.ndjson \
  --rules rules.yaml

The dashboard is read-only. It does not mutate rules or engine state.

Kubernetes

The Helm chart runs the agent as a DaemonSet and the dashboard as a Deployment. The default mode tails container logs from each node and writes decision/DLQ files under /var/log/blazerules.

See Kubernetes Log Ingestion and Deployment.