Skip to content

Metrics

The Prometheus metrics the daemon serves at /metrics, once enabled with metrics.enable. Every metric of Dicer’s own is named dicer_. See Monitoring for scraping and alerts.

The endpoint also serves the Go runtime’s go_* metrics and the daemon process’s process_* metrics, and speaks OpenMetrics to a scraper that asks for it.

Daemon

MetricTypeLabels
dicer_build_infogaugeversion, commit, go_versionAlways 1; the build is in its labels.
dicer_start_time_secondsgaugeWhen the daemon started, in seconds since the Unix epoch.

Instances

MetricTypeLabels
dicer_instancesgaugestateInstances defined on the host, by state. Every state is present, at 0 if none.
dicer_instances_healthgaugestatusInstances whose health is checked, by what the check found.
dicer_instances_vcpusgaugevCPUs held by instances that are starting, running or paused.
dicer_instances_vcpus_allocatablegaugevCPUs instances may hold in total. A start beyond it is refused.
dicer_instances_memory_bytesgaugeMemory held by instances that are starting, running or paused.
dicer_instances_memory_allocatable_bytesgaugeMemory instances may hold in total. A start beyond it is refused.
dicer_instance_operations_totalcounteroperation, outcomeLifecycle operations, by how they ended.
dicer_instance_operation_duration_secondshistogramoperationHow long lifecycle operations took.
dicer_instance_restarts_totalcounterInstances started again by their restart policy.

The allocatable amounts are the host’s CPUs and memory, less the reserve, multiplied by the overcommit, as the resources section of the configuration sets them.

Images

MetricTypeLabels
dicer_imagesgaugeImages held on the host.
dicer_image_disk_bytesgaugeSize of the disks those images were converted to.
dicer_image_pulls_totalcounteroutcomePulls that reached a registry. A pull of an image already held is not counted.
dicer_image_pull_duration_secondshistogramHow long a pull took, from resolving the reference to a disk ready to boot.
dicer_image_downloaded_bytes_totalcounterCompressed layer bytes downloaded from registries.
dicer_image_conversion_duration_secondshistogramHow long converting an image to its disk took.
dicer_image_cache_lookups_totalcounterresultPulls by whether the host already held the image.
dicer_image_gc_collected_totalcounterreasonImages garbage collection removed.
dicer_image_gc_reclaimed_bytes_totalcounterDisk space garbage collection gave back, disks and cached layers together.

Networks

MetricTypeLabels
dicer_network_addresses_allocatedgaugenetworkAddresses given to instances on a network.
dicer_network_addresses_availablegaugenetworkAddresses a network has still to give.

API

MetricTypeLabels
dicer_grpc_requests_totalcountermethod, codeAPI calls, by method and the gRPC status code they ended with.
dicer_grpc_request_duration_secondshistogrammethodHow long API calls took. For a stream, such as logs -f, it is how long the client stayed.

Label values

LabelValues
stateStopped, Starting, Running, Paused, Stopping, Restarting, Failed
statusstarting, healthy, unhealthy
operationstart, stop, pause, resume, delete, create_snapshot, restore_snapshot, delete_snapshot
outcomesuccess, error
resulthit, miss
reasonunused, size
networkA network’s name.
methodA full gRPC method, such as /dicerd.v1.DaemonService/StartInstance.
codeA gRPC status code, such as OK or NotFound.