Recipe: Kubernetes Log Ingestion
Use the Helm chart to run the agent on each node and the dashboard in-cluster.
The Helm chart runs blazerules_agent as a DaemonSet and blazerules_dashboard as a Deployment.
Install
helm install blazerules ./charts/blazerules \
--set image.repository=your-registry/blazerules \
--set image.tag=0.5.2Default agent input:
agent:
enabled: true
mode: daemonset
input:
type: file_tail
path: /var/log/containers/blazerules.log
output:
type: ndjson
path: /var/log/blazerules/decisions.ndjsonCustom Values
These values override the chart defaults (batchSize: 2048, flushMs: 1000); tune them for your throughput/latency needs.
image:
repository: ghcr.io/your-org/blazerules
tag: 0.5.2
agent:
batchSize: 4096
flushMs: 250
input:
type: file_tail
path: /var/log/containers/checkout.log
output:
type: ndjson
path: /var/log/blazerules/decisions.ndjson
dedupe:
enabled: true
keyFields: [event_id]
ttlSeconds: 3600
dashboard:
enabled: true
service:
type: ClusterIP
decisionLogPath: /var/log/blazerules/decisions.ndjson
deadLetterLogPath: /var/log/blazerules/dead_letters.ndjson
persistence:
enabled: true
size: 20GiApply:
helm upgrade --install blazerules ./charts/blazerules -f values.yamlNotes
- Keep the dashboard behind internal access controls. It has no built-in auth.
- Enable persistence if you need decision/DLQ files after pod restart.
- For cloud object storage, supply AWS profile/region/endpoint credentials through environment variables or your platform secret mechanism.
Updated 3 days ago
Did this page help you?