Consul Dataplane Telemetry
Consul Dataplane collects metrics about its own status and performance. The following external metrics stores are supported:
Consul Dataplane uses the same external metrics store that is configured for Envoy. To enable telemetry for Consul Dataplane, enable telemetry for Envoy by specifying an external metrics store in the proxy-defaults configuration entry or directly in the proxy.config field of the proxy service definition. Refer to the Envoy bootstrap configuration for details.
Prometheus Metrics Merging
When Prometheus metrics are used, Consul Dataplane configures Envoy to serve merged metrics through a single endpoint. Metrics from the following sources are collected and merged:
- Consul Dataplane
- The Envoy process managed by Consul Dataplane
- (optionally) Your service instance running alongside Consul Dataplane
Metrics Reference
Consul Dataplane supports the following metrics:
Metric Name | Description | Unit | Type |
---|---|---|---|
consul_dataplane.connect_duration | Measures the time consul-dataplane spends connecting to a Consul server, including the time to discover Consul server addresses and to complete other setup prior to Envoy opening the xDS stream. | ms | timer |
consul_dataplane.connected | Indicates whether consul-dataplane is currently connected to a Consul server. | 1 or 0 | gauge |
consul_dataplane.connection_errors | Measures the number of errors encountered on gRPC streams. This is labeled with the gRPC error status code. | number of errors | gauge |
consul_dataplane.discover_servers_duration | Measures the time consul-dataplane spends discovering Consul server IP addresses. | ms | timer |
consul_dataplane.envoy_connected | Indicates whether Envoy is currently connected to consul-dataplane and able to receive xDS updates. | 1 or 0 | gauge |
consul_dataplane.login_duration | Measures the time consul-dataplane spends logging in to an ACL auth method. | ms | timer |