Istio stats HTTP filter (proto)
This extension has the qualified name envoy.filters.http.istio_stats
Note
This extension is only available in contrib images.
Note
This extension is functional but has not had substantial production burn time, use only with this caveat.
This extension is not hardened and should only be used in deployments where both the downstream and upstream are trusted.
Tip
This extension extends and can be used with the following extension category:
This extension must be configured with one of the following type URLs:
type.googleapis.com/stats.PluginConfig
Istio stats HTTP filter for collecting and reporting metrics.
.stats.MetricConfig
Metric instance configuration overrides. The metric value and the metric type are optional and permit changing the reported value for an existing metric. The standard metrics are optimized and reported through a “fast-path”. The customizations allow full configurability, at the cost of a “slower” path.
{
"dimensions": {...},
"name": ...,
"tags_to_remove": [],
"match": ...,
"drop": ...
}
- dimensions
(repeated .stats.MetricConfig.DimensionsEntry) (Optional) Collection of tag names and tag expressions to include in the metric. Conflicts are resolved by the tag name by overriding previously supplied values.
- name
(string) (Optional) Metric name to restrict the override to a metric. If not specified, applies to all.
- tags_to_remove
(repeated string) (Optional) A list of tags to remove.
- match
(string) NOT IMPLEMENTED. (Optional) Conditional enabling the override.
- drop
(bool) (Optional) If this is set to true, the metric(s) selected by this configuration will not be generated or reported.
.stats.MetricDefinition
[.stats.MetricDefinition proto]
{
"name": ...,
"value": ...,
"type": ...
}
- name
(string) Metric name.
- value
(string) Metric value expression.
- type
(.stats.MetricType) Metric type.
.stats.PluginConfig
{
"disable_host_header_fallback": ...,
"tcp_reporting_duration": {...},
"metrics": [],
"definitions": [],
"reporter": ...,
"rotation_interval": {...},
"graceful_deletion_interval": {...}
}
- disable_host_header_fallback
(bool) Optional: Disable using host header as a fallback if destination service is not available from the control plane. Disable the fallback if the host header originates outsides the mesh, like at ingress.
- tcp_reporting_duration
(Duration) Optional. Allows configuration of the time between calls out to for TCP metrics reporting. The default duration is
5s.
- metrics
(repeated .stats.MetricConfig) Metric overrides.
- definitions
(repeated .stats.MetricDefinition) Metric definitions.
- reporter
(.stats.Reporter) Proxy deployment type.
- rotation_interval
(Duration) Metric scope rotation interval. Set to 0 to disable the metric scope rotation. Defaults to 0. DEPRECATED.
- graceful_deletion_interval
(Duration) Metric expiry graceful deletion interval. No-op if the metric rotation is disabled. Defaults to 5m. Must be >=1s. DEPRECATED.
Enum .stats.MetricType
- COUNTER
(DEFAULT)
- GAUGE
- HISTOGRAM
Enum .stats.Reporter
Specifies the proxy deployment type.
- UNSPECIFIED
(DEFAULT) Default value is inferred from the listener direction, as either client or server sidecar.
- SERVER_GATEWAY
Shared server gateway, e.g. “waypoint”.