hashicorp / hashicorp/consul

Terminating Gateways Need Better Metrics

Open
#16,965 0 comments 0 reactions 0 assignees View on GitHub
theme/telemetry theme/terminating-gw
Dominant language
Go
Stars
30.1k
Forks
4.6k
Avg merge
1d 18h
Merged PRs (30d)
39

Description

#### Feature Description

Currently, when attempting to monitor or gather metrics from Terminating Gateways, there are no real decent direct metrics that get output by envoy, with how consul configures it.

As an Example, if I have a terminating Gateway with a Service Name: "My-Terminating-Gateway", as there is no envoy cluster created named "My-Terminating-Gateway", and only clusters by the name of the upstream services it is fronting for, I don't really get any envoy metrics for this terminating gateway directly.

I also do not get metrics like `consul.catalog.nodes_up` for terminating gateways, which makes monitoring them quite difficult.

As Consul Metrics themselves are also non existent, such as the normal `nodes_up`/`nodes_critical` etc, there's no true way to monitor them. It seems odd this metric specifically doesn't exist for Terminating Gateways, as ultimately, they are still a service in Consul's eyes.

#### Use Case(s)

This use case is to be able to monitor, and measure the performance of Terminating Gateways as a service on the Consul Service Mesh.

Contributor guide

Open the contributing guide

Research direction

No files, tests, or entry points are identified in the issue. Start by locating the terminating-gateway metrics and Consul service-health metric paths, then determine the expected direct gateway metrics, including nodes_up and nodes_critical. Done means terminating gateways expose monitorable metrics that cover the stated use case.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
observability
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.