Files
zeekay ed1b874bd8 fix(metrics): complete the prometheus -> luxfi/metric migration
The mechanical migration (9b8e9a14b) left the tree uncompilable: it used
luxfi/metric as a prometheus drop-in, but several symbols were missing and a
few types were misused. Finish it against luxfi/metric v1.8.2 (which adds the
prometheus-compat surface):

- pin luxfi/metric v1.8.2 (native-histogram HistogramOpts fields, package
  MustRegister/Unregister, AlreadyRegisteredError, With/AutoFactory,
  GoCollectorOption/MetricsAll, Vec.Delete, no-op collector registration)
- use metric.Registry / metric.{Histogram,Counter}Vec as INTERFACES, not
  concrete pointers (plugin/metrics, plugin/kubernetes)
- build with -tags metrics so luxfi/metric's collecting registry is active
  (the default is a //go:build metrics no-op stub); wire it into Makefile
  GOTAGS, the GHCR image build, and the CI test matrix
- test harness: select a metric-name validation scheme for the exposition
  parser (client_golang used to set the global default; CoreDNS no longer
  imports it)

go build ./... + go test -tags metrics ./plugin/metrics/... /kubernetes /reload
are green.
2026-07-18 09:45:11 -07:00
..
2025-09-10 13:08:27 -07:00