api.PipelineMetricsSnapshot
api.PipelineMetricsSnapshot API schema defining 3 fields, including connection state, pipeline id, and samples.
samples object[]
bytes_input object
BytesInput / BytesOutput are the pipeline.bytes.volume distributions (bytes) for the input and output stages.
seconds for durations, bytes for volume
bytes_output object
seconds for durations, bytes for volume
OrchestrationErrors is the pipeline.orchestration.errors count over the batch interval.
readiness object
Readiness is the pipeline.readiness.duration distribution (seconds).
seconds for durations, bytes for volume
stages object[]
Stages carries per-stage throughput and latency, keyed by component_type (input / processor / output) -- the only per-point dimension kept.
ComponentType is the pipeline stage: "input", "processor", or "output".
latency object
Latency is the stage latency distribution (seconds).
seconds for durations, bytes for volume
Received / Sent / Errors are message counts over the batch interval.
Timestamp is the collection time on the edge (NOT arrival time), so a reconnect catch-up flush renders in the correct window rather than collapsing into a spike.
{
"connection_state": "string",
"pipeline_id": "string",
"samples": [
{
"bytes_input": {
"count": 0,
"p95": 0,
"sum": 0
},
"bytes_output": {
"count": 0,
"p95": 0,
"sum": 0
},
"execution_id": "string",
"orchestration_errors": 0,
"pipeline_id": "string",
"readiness": {
"count": 0,
"p95": 0,
"sum": 0
},
"stages": [
{
"component_type": "string",
"errors": 0,
"latency": {
"count": 0,
"p95": 0,
"sum": 0
},
"received": 0,
"sent": 0
}
],
"timestamp": "string"
}
]
}