QoI Telemetry Reference

Quality of Impact (QoI) covers the energy and power consumption of testbed components — how much energy each component consumes and how reliably that can be measured.

Every component in the Component Registry must declare a measurability tier and emit power signals accordingly.

All QoI signals are emitted via OpenTelemetry (OTel) Metrics to the TelemetryHub.

Version documented: rev1, June 2026 — aligned to the TPT metric specifications.


Configuration

Field Type Default Description
endpoint String "" OTLP endpoint URL.
isSecure bool false Use HTTPS instead of HTTP
exportIntervalSeconds int 300 Recommended default (5 minutes)
enabled bool false Enable/disable QoI telemetry

Common Resource Attributes

Included on all QoI metrics:

Attribute Type Example Description
service.name String hnr-msp-origin Component identifier — use the canonical Component Registry ID
service.version String 2.1.4 Deployed version
service.instance.name String hnr-origin-01 e.g. Hostname of the machine running the component
deployment.environment String hnr Testbed identifier

Measurability Tiers

Each component must declare one of the following tiers. This determines which power signals are expected.

Tier Description
Measured An OTel, Prometheus, IPMI, or smart-PDU integration exists that can attribute power consumption to this component.
Modelled Direct measurement is not possible; consumption is estimated from proxy signals (CPU time, request rate, etc.) using a documented model.
Not Measurable Shared or virtualised infrastructure (Kubernetes, Docker, AWS) makes per-component attribution inaccurate or impossible. Rationale must be stated.
N/A Energy measurement is not applicable to this component.

Power Consumption Metric

Measurement

For all components with a declared measurability tier of Measured or Modelled, the following metric is mandatory:

Metric Type Unit Description
power.component.watts Gauge W Average power draw attributed to this component for this period

Attributes (Measured)

For components with a declared measurability tier of Measured:

Attribute Type Description
energy.source String Measurement method: otel, prometheus, ipmi, smart_pdu, scaphandre
energy.scope String Attribution scope: component, host, rack

Attributes (Modelled)

For components with a declared measurability tier of Modelled:

Attribute Type Description
energy.model String Proxy basis: cpu_tdp, request_rate, cpu_utilisation, or custom
energy.scope String Attribution scope: component, host, rack