Supported telemetry types
The Envoy integration supports these telemetry types:Prerequisites
The Envoy integration has the following prerequisites:- Configure Envoy to expose metrics at
/stats/prometheus. - Make the Envoy metrics endpoint reachable from the collector.
Configure
To configure the Envoy integration, follow these steps:-
For Envoy pods that listen on port
8001or9901, add theapp.kubernetes.io/name: envoylabel to the pod template. For instances that use another port or metrics path, provide the complete metrics endpoint URL through autodiscovery annotations. For more information, see autodiscovery. -
Optional: Configure static targets for Envoy proxies that autodiscovery doesn’t
reach. For example, add the following to the
values.yamlfor your Helm chart:
Validate
To validate the Envoy integration, follow these steps:-
In Live Telemetry Analyzer, filter for
cxdot.integration.name=envoy. Confirm that the Envoy metric names appear. -
In Metrics Explorer, run the following query:
Confirm that every Envoy proxy you expect appears in the results.
Configuration reference
Configure one Envoy integration instance with the following settings. In Helm values, place these settings underconfig.integrations.envoy. In a Collector configuration file, place them
under cxdot.integrations.envoy.
Optional settings
-
enabledType:boolean. Optional. Default:true. Whether to enable this Envoy integration instance. If true, the Collector collects metrics from Envoy targets. If false, it doesn’t run this integration instance. -
endpointsType:array of object. Optional. Static Envoy targets ashost:portvalues or complete HTTP or HTTPS URLs. Forhost:port, the Collector requests/stats/prometheusover HTTP. A nonempty list disables automatic discovery for this integration instance, and the Collector scrapes only the listed targets. -
endpoints[].endpointType:string. Required. Envoy target ashost:portor a complete HTTP or HTTPS URL. Forhost:port, the Collector requests/stats/prometheusover HTTP. -
collection_intervalType:duration. Optional. Default:10s. How often the Collector requests metrics from each Envoy target. -
timeoutType:duration. Optional. Default:10s. Maximum time the Collector waits for an Envoy metrics request to complete. -
metricsType:object. Optional. Settings for collecting and naming Envoy metrics. -
metrics.includeType:array of string. Optional. Metrics to collect, in addition to the default set. Each entry is a regular expression matched against the metric name. -
metrics.excludeType:array of string. Optional. Metrics to drop, matched the same way asinclude. Applied afterwards, so it subtracts from whatincludechose. -
metrics.renameType:object. Optional. Renames metrics, as{old: new}. User-configured renames take precedence over default renames. -
labelsType:object. Optional. Which samples to drop, by label value. -
labels.sample_drop_rulesType:object. Optional. Drops a whole sample when one of its labels matches. Each key is a label name. The value is a list of regular expressions matched against the label’s value. To drop every sample the label appears on with a non-empty value, use".+".

