Two Modes of Operation
The Reporter supports two independent modes that can run simultaneously:| Mode | Activation | Prerequisites |
|---|---|---|
| Console | flowwarden.api-key + flowwarden.reporter.console-url configured | FlowWarden Console account |
| Local / Prometheus | Automatic when MeterRegistry is on the classpath | spring-boot-starter-actuator + micrometer-registry-prometheus |
StreamMetricsAggregator — no duplicate collection.
What Gets Reported
Each heartbeat (Console mode) or scrape (Prometheus mode) contains:| Data | Console | Prometheus |
|---|---|---|
| Stream status (running, paused, error, stopped) | ✅ | — |
| Event counters (processed, errors, DLQ) | ✅ | ✅ flowwarden_stream_events_total |
| Consumer lag (ms) | ✅ | ✅ flowwarden_stream_lag_ms |
| DLQ size | ✅ | ✅ flowwarden_stream_dlq_size |
| Throughput (events/sec) | ✅ | ✅ flowwarden_stream_events_per_second |
| Checkpoint info (last seen age, events behind) | ✅ | — |
| JVM metrics (heap, CPU, threads) | ✅ | — |
| Error details (type, message, stack trace) | ✅ | — |
| Deployment info (hostname, version, env) | ✅ | — |
Key Features
Zero-code integration
Just add the dependency. The Reporter auto-configures via Spring Boot.
Dual mode
Console mode, Prometheus mode, or both simultaneously. Use what fits your stack.
Resilient
Retries with exponential backoff. Graceful degradation if the Console is unreachable.
Dynamic interval
The Console controls the heartbeat frequency via the ACK response — no restart needed.
Prerequisites
- FlowWarden Stream Core on your classpath (the Reporter implements its
StreamMetricsProviderSPI) - Java 17+ and Spring Boot 3.2+
- For Console mode: a FlowWarden Console account with an API key
- For Prometheus mode:
spring-boot-starter-actuator+micrometer-registry-prometheuson the classpath
Next Steps
Quick Start
Add the Reporter to your project in 5 minutes.
Configuration
Full reference of all Reporter properties.

