Ingress and terminating gateway stats are misnamed since 1.9 #9887
Labels
theme/connect
Anything related to Consul Connect, Service Mesh, Side Car Proxies
theme/telemetry
Anything related to telemetry or observability
type/bug
Feature does not function as expected
Overview of the Issue
As of Consul 1.9.0, Prometheus metrics for ingress (and possibly other gateway types based on
statsPrefix
usage inagent/xds/listeners.go
) are misnamed, and include the upstream name/port in the metric name, instead of as a including that in theenvoy_http_conn_manager_prefix
label. This makes the metrics difficult to use on standardised Envoy dashboards.Note, I think this was introduced in #9207:
The specific change that cased this was the transition from
statPrefix
ending with an underscore (_
) to a period (.)
- fe72885#diff-3f5a22a74e450c254308e27dccb905bdce627f0a29ec602ca66df792d1dbf5ceL1010. This means the built in Envoy stats formatters/matchers don't kick in and extract the correct part for the label. While updated matchers handled this for normal connect proxy upstreams (https://github.com/hashicorp/consul/pull/9207/files#diff-3d65fe35c13bd0d74e9cabcee963eea26abcafb433b75454c7bfd697f1f451f4R367), they don't account for the naming conventions of gateways.Right now I'm not sure if this is an intended change, or just a side effect of the metric tag updates in that pull request.
The Envoy metrics we're talking about here are those such as:
http.ingress_upstream.14145.downstream_cx_length_ms
In 1.8.x:
In 1.9.x:
Reproduction Steps
Grab yourself a Consul, and get it up and running:
Create some a dummy service and ingress gateway:
Start an ingress gateway:
Observe Envoy + Prometheus stats:
The text was updated successfully, but these errors were encountered: