Skip to main content

api.ComponentMetrics

api.ComponentMetrics API schema defining 7 fields, including component name, errors, latency, and 4 more.

component_namestring

ComponentName is the component's plugin/type name (e.g. "generate", "http_server", "mapping") -- the component_name label on the OTLP/Prometheus series. Empty for an older edge that does not report it, or a component that carries no name attribute.

errorsinteger
latency object

Latency is the component latency histogram (seconds).

boundsnumber[]

Bounds are the explicit upper bounds (le), ascending.

bucket_countsinteger[]

BucketCounts are the per-bucket counts; len == len(Bounds)+1, where the final entry is the +Inf overflow bucket. NOTE: these are OTel DELTA (non-cumulative) per-bucket counts. A Prometheus _bucket{le} series / PromQL histogram_quantile needs CUMULATIVE counts, so a remote-write must ascending-cumsum them first. The counts are consistent with Count (sum(BucketCounts) == Count).

countinteger
sumnumber

seconds for durations

pathstring

Path is the Benthos component path, e.g. "root.pipeline.processors.1".

receivedinteger

Received / Sent / Errors are message counts over the batch interval.

sentinteger
stagestring

Stage is the component's stage: "input", "processor", or "output" (derived from the emitting metric name; reconstructs the series name).

api.ComponentMetrics
{
"component_name": "string",
"errors": 0,
"latency": {
"bounds": [
0
],
"bucket_counts": [
0
],
"count": 0,
"sum": 0
},
"path": "string",
"received": 0,
"sent": 0,
"stage": "string"
}