Configure Prometheus scrape for gnmic #45
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
device,interface,vnias Prometheus labelsArchitecture change
Prometheus is currently a dedicated external instance. Scope of this issue is extended to deploy a dedicated Prometheus instance inside the Containerlab topology (self-contained, reproducible with
clab deploy/clab destroy), alongside the existing gnmic node (see #43/#44).The existing dedicated Prometheus instance stays untouched in parallel for now — no cutover until the containerized instance is validated.
Grafana is out of scope for this issue. The existing Grafana instance is used as-is; no new datasource provisioning here.
Containerized Prometheus deployed and validated
prometheus(prom/prometheus:v2.55.1), added toevpn-lab.clab.yml172.16.0.71:9090(mgmt network), self-contained withclab deploy/clab destroyconfigs/prometheus/prometheus.yml— single scrape jobgnmictargeting172.16.0.70:9273,scrape_interval: 5sValidation (live against the deployed lab)
Target health:
up(/api/v1/targets).BGP session-state and system-memory metrics validated in #44 are queryable with clean labels:
core1/core2BGP sessions present (20 series across underlay +goldVRF)goldVRF (EVPN Type-5 stretch) present innetwork_instance_namelabel (18 series)Relabeling applied (
metric_relabel_configs)sourcedeviceinterface_nameinterfaceneighbor_neighbor_addressneighbor_addressvlan_to_vni_vlan/entry_vlanvlanentry_mac_addressmac_addressafi_safi_afi_safi_nameafi_safiGap: no native
vnilabelvniis not exposed as a label by any gnmic metric. It only appears as the sample value ofinterfaces_interface_arista_vxlan_vlan_to_vnis_vlan_to_vni_state_vni, keyed by(device, interface, vlan), e.g.:Relabeling can only rename existing scrape-time labels, not promote a sample value to a label. Per-VNI MAC counts (join of
vlan_to_vni_state_vniwith FDB entry counts) need a PromQL join onvlan, not a nativevnilabel — flagging this as a known gap vs. the original ask, not something fixable at the relabeling stage. Left for a future recording-rule pass if needed.Grafana/dashboard work out of scope here per issue description.
feat/telemetryto feat/telemetry