Principle:SeldonIO Seldon core Usage Metrics Publishing
| Knowledge Sources | |
|---|---|
| Domains | Observability, Metrics_Publishing, Usage_Telemetry |
| Last Updated | 2026-02-13 14:00 GMT |
Overview
A resilient event publishing mechanism that transmits collected usage metrics to one or more remote analytics endpoints with retry logic and concurrent delivery.
Description
Usage Metrics Publishing addresses the challenge of reliably delivering telemetry data from within a Kubernetes cluster to external analytics services. The publisher flattens structured metrics into key-value properties via reflection, wraps them as timestamped events with unique insert IDs for deduplication, and sends them concurrently to all configured endpoints. Resilience is achieved through exponential backoff retry with configurable maximum attempts and wait bounds.
This principle is independent of the specific analytics backend; the publisher treats each target URL as an opaque endpoint that accepts event-tracking HTTP requests.
Usage
Use this principle when designing a telemetry publisher that must deliver structured metrics to external analytics services with at-least-once delivery semantics and fan-out to multiple endpoints.
Theoretical Basis
The publishing follows a fan-out pattern with per-endpoint retry:
Pseudo-code Logic:
# Abstract algorithm description
event = {
"timestamp": now(),
"insert_id": unique_id(),
"properties": flatten_to_kv(metrics)
}
for endpoint in configured_endpoints:
async: retry_with_backoff(endpoint.send(event), max=20, min_wait=1s, max_wait=30s)
await_all()