A tiny reliability lab · Synthetic data

Data pipelines need manners.

A small, browser-only simulation of three useful ingestion habits: validate before accepting, make retries safe, and explain rejected events. No live service or real operational data is involved.

Choose an event

Accepted: 0

Rejected: 0

Last event: Waiting for a reading.

Recent events in this browser session
EventReadingResultReason
No events yet. Try the valid reading.

What this shows

Validation keeps malformed values out of trusted records. A stable event ID lets the receiver recognize a retry instead of counting it twice. A clear rejection reason gives operators something they can act on.

This is a teaching example, not a production pipeline benchmark. Real systems also need durable queues or storage, authentication, monitoring, replay policies, and domain-specific validation.

Read the operational observability case study ↗

Discuss a data reliability challenge ↗