How It Works
The Flexprice Collector is built on Bento, a robust stream processing tool. Bento’s strong delivery guarantees and retry capabilities make it ideal for reliable event ingestion. The collector connects your data sources (Kafka, webhooks, databases) to Flexprice through a processing pipeline with three components:- Inputs read data from various sources (Kafka, webhooks, databases, files)
- Processors validate, transform, and filter data to match Flexprice format
- Outputs send data to Flexprice API with bulk batching and retry logic
Key Features
The Flexprice Collector is optimized for high-performance usage metering:- Automatic Batching: Groups events for bulk ingestion (10 events or 2s by default)
- Smart Routing: Uses
/eventsfor single events,/events/bulkfor batches - Retry Logic: Exponential backoff ensures no data loss on network failures
- High Throughput: Handles millions of events per day with minimal latency
Ingesting Data into Flexprice
The collector always outputs to the Flexprice API:Installation
The Flexprice Collector is available via:- Binaries from GitHub Releases
- Container images
- Kubernetes deployment (see Get Started guide)
Performance & Reliability
The collector provides:- Bulk Ingestion: Batches up to 100 events per API call
- Automatic Retries: Failed events retry with exponential backoff
- At-Least-Once Delivery: Kafka consumer groups ensure no data loss
- Observability: Prometheus metrics and structured logging

