register Oximeter metrics for local disks#1144
Conversation
| block_dev.attachment().set_metric_consumer(block_metrics); | ||
| }; | ||
| } else { | ||
| slog::error!( |
There was a problem hiding this comment.
We still won't try to log cloud-init type backends, right? As they have no UUID:
16:18:52.344Z INFO propolis-server (vm_state_driver): Creating storage device
device_id = cloud-init-dev
spec = Virtio(VirtioDisk { backend_id: Name("cloud-init-backend"), pci_path: PciPath { bus: 0, device: 24, function: 0 } })
There was a problem hiding this comment.
The type system allows virtio devices to have a Uuid (the backend_id could be a Uuid instead of a Name). But if in practice they do not have uuid's (as shown in your log output), then we won't register metrics for them.
There was a problem hiding this comment.
The type system allows virtio devices to have a Uuid (the
backend_idcould be a Uuid instead of a Name). But if in practice they do not have uuid's (as shown in your log output), then we won't register metrics for them.
Perfect. It's what we discussed during the huddle, but I wanted to be sure we were not going to all of a sudden start logging all the cloud-init disks.
This will cause metrics to be reported for local disks (e.g. reads, writes, etc).
Tested by specifying a UUID in the instance spec toml file, and retrieving the metrics with
curl, e.g.: