Currently, the Xen Orchestra OpenMetrics exporter does not include object tags
(hosts, VMs, etc.) as metric labels.
This makes it difficult or impossible to selectively monitor resources in external
systems such as Zabbix, Prometheus, or Grafana, especially in MSP or multi-tenant
environments where tagging is commonly used for scoping.
Current limitation
For example, xcp_host_status exposes labels like:
uuid
host_name
pool_name
power_state
enabled
But it does not expose any tag-related information, even though tags are available
in XO.
Proposed improvement
Include tags as an additional label, for example:
tags="tag1,tag2,tag3"
Ideally for:
- hosts (
xcp_host_*)
- VMs (
xcp_vm_*)
- (optionally) storage repositories
Benefits
- enables filtering and scoping in external monitoring systems
- reduces noise by allowing selective discovery
- aligns with common Prometheus/OpenMetrics practices
- no breaking change (additional label only)
Example use cases
- monitor only resources tagged
production
- separate customers in MSP environments
- exclude lab/test systems from monitoring
Currently, the Xen Orchestra OpenMetrics exporter does not include object tags
(hosts, VMs, etc.) as metric labels.
This makes it difficult or impossible to selectively monitor resources in external
systems such as Zabbix, Prometheus, or Grafana, especially in MSP or multi-tenant
environments where tagging is commonly used for scoping.
Current limitation
For example,
xcp_host_statusexposes labels like:uuidhost_namepool_namepower_stateenabledBut it does not expose any tag-related information, even though tags are available
in XO.
Proposed improvement
Include tags as an additional label, for example:
tags="tag1,tag2,tag3"
Ideally for:
xcp_host_*)xcp_vm_*)Benefits
Example use cases
production