Metrics v1.3.0

3 min read


ℹ️
Edera metrics are currently in Alpha. New metrics are expected to be added, and existing metrics are subject to change.

Edera exposes a set of metrics to provide an overview of the health and performance of Edera and the infrastructure it runs on.

The following metrics are exposed by Edera:

Zone metrics

Zone metrics encapsulates metrics obtained from an Edera Zone.

MetricDescriptionTypeLabels
zone_cpu_usage_percentCPU usage in percent, in the range 0-100.gaugecpu, zone_id, k8s_namespace, k8s_pod
zone_cpu_usage_seconds_totalCPU time used, in seconds, per cpu.countercpu, zone_id, k8s_namespace, k8s_pod
zone_create_timestamp_millisecondsTime when zone was created as a Unix timestamp with millisecond resolution.gaugezone_id, k8s_namespace, k8s_pod
zone_memory_total_bytesTotal number of bytes of memory allocated to the zone.gaugezone_id, k8s_namespace
zone_memory_free_bytesNumber of bytes of memory allocated to the zone and currently unused.gaugezone_id, k8s_namespace
zone_memory_used_bytesNumber of bytes of memory allocated to the zone and currently in use.gaugezone_id, k8s_namespace
zone_ready_timestamp_millisecondsTime when a zone is ready for use as a Unix timestamp with millisecond resolution.gaugezone_id, k8s_namespace, k8s_pod
zonesCurrent number of zones, per state.gaugestate

Hypervisor metrics

Hypervisor metrics encapsulates metrics obtained from the hypervisor of an Edera zone.

MetricDescriptionTypeLabels
hypervisor_cpu_usage_seconds_totalCPU time used, in seconds, per zone.counterzone_id
hypervisor_memory_max_bytesMaximum memory allowed, in bytes, per zone.gaugezone_id
hypervisor_memory_total_bytesTotal memory currently allocated, in bytes, per zone.gaugezone_id
hypervisor_memory_outstanding_bytesMemory owed but not yet allocated, in bytes, per zone.gaugezone_id
hypervisor_vcpus_onlineNumber of virtual CPUs currently online, per zone.gaugezone_id

Host metrics

Host metrics encapsulates metrics obtained from the host of Edera, also referred to as dom0.

MetricDescriptionTypeLabels
host_cpu_usage_percentCPU usage in percent, in the range 0-100.gaugecpu
host_cpu_usage_seconds_totalCPU time used, in seconds, per cpu, per mode.countercpu, mode
host_memory_total_bytesTotal number of bytes of memory allocated to the host.gauge
host_memory_free_bytesNumber of bytes of memory allocated to the host and currently unused.gauge
host_memory_used_bytesNumber of bytes of memory allocated to the host and currently in use.gauge

Health check metrics

Health check metrics encapsulates metrics which provide an insight into the health of Edera services.

MetricDescriptionTypeLabels
health_check_totalTotal number of health checks performed, labeled by service and result status (success or failure).counterservice, status

Label examples

Exposed metrics may contain labels, which provides additional context, such as the zone a metric is being populated from, and allows for more detailed querying and filtering.

LabelDescriptionExample
cpuName of the CPU.cpu="cpu1" or cpu="1"
k8s_namespaceName of the Kubernetes namespace the zone is in.k8s_namespace="default"
k8s_podKubernetes pod ID the zone is related to.k8s_pod="nginx-deployment-7d6c54b4c6-g84cl"
modeMode of the CPU.mode="idle" or mode="user"
serviceName of the Edera service.service="protect-cri" or service="protect-daemon"
stateState of the Edera zone.state="ready" or state="failed"
statusStatus returned from the Edera service during a health check.status="success" or status="failed"
zone_idID of the Edera zone.zone_id="7568edad-3a34-47e3-b605-36ede54a9aab"

Collect metrics

Edera metrics are exposed by in the Prometheus format, by default on http://127.0.0.1:3035/metrics. If an alternative address is preferred, it can be provided to the metrics-http-listen-addr flag on the protect-orchestrator service. Metrics can be viewed directly via the /metrics endpoint, or scraped by third-party tooling.

Last updated on