pub struct MetricsServiceConfig {
pub grpc_service: Option<GrpcService>,
pub transport_api_version: i32,
pub report_counters_as_deltas: Option<BoolValue>,
pub emit_tags_as_labels: bool,
pub histogram_emit_mode: i32,
}
Expand description
Metrics Service is configured as a built-in envoy.stat_sinks.metrics_service
:ref:StatsSink <envoy_v3_api_msg_config.metrics.v3.StatsSink>
. This opaque configuration will be used to create
Metrics Service.
Example:
.. code-block:: yaml
stats_sinks:
- name: envoy.stat_sinks.metrics_service
typed_config:
"@type": type.googleapis.com/envoy.config.metrics.v3.MetricsServiceConfig
[#extension: envoy.stat_sinks.metrics_service] [#next-free-field: 6]
Fields§
§grpc_service: Option<GrpcService>
The upstream gRPC cluster that hosts the metrics service.
transport_api_version: i32
API version for metric service transport protocol. This describes the metric service gRPC endpoint and version of messages used on the wire.
report_counters_as_deltas: Option<BoolValue>
If true, counters are reported as the delta between flushing intervals. Otherwise, the current
counter value is reported. Defaults to false.
Eventually (https://github.com/envoyproxy/envoy/issues/10968) if this value is not set, the
sink will take updates from the :ref:MetricsResponse <envoy_v3_api_msg_service.metrics.v3.StreamMetricsResponse>
.
If true, metrics will have their tags emitted as labels on the metrics objects sent to the MetricsService, and the tag extracted name will be used instead of the full name, which may contain values used by the tag extractor or additional tags added during stats creation.
histogram_emit_mode: i32
Specify which metrics types to emit for histograms. Defaults to SUMMARY_AND_HISTOGRAM.
Implementations§
Source§impl MetricsServiceConfig
impl MetricsServiceConfig
Sourcepub fn transport_api_version(&self) -> ApiVersion
pub fn transport_api_version(&self) -> ApiVersion
Returns the enum value of transport_api_version
, or the default if the field is set to an invalid enum value.
Sourcepub fn set_transport_api_version(&mut self, value: ApiVersion)
pub fn set_transport_api_version(&mut self, value: ApiVersion)
Sets transport_api_version
to the provided enum value.
Sourcepub fn histogram_emit_mode(&self) -> HistogramEmitMode
pub fn histogram_emit_mode(&self) -> HistogramEmitMode
Returns the enum value of histogram_emit_mode
, or the default if the field is set to an invalid enum value.
Sourcepub fn set_histogram_emit_mode(&mut self, value: HistogramEmitMode)
pub fn set_histogram_emit_mode(&mut self, value: HistogramEmitMode)
Sets histogram_emit_mode
to the provided enum value.
Trait Implementations§
Source§impl Clone for MetricsServiceConfig
impl Clone for MetricsServiceConfig
Source§fn clone(&self) -> MetricsServiceConfig
fn clone(&self) -> MetricsServiceConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for MetricsServiceConfig
impl Debug for MetricsServiceConfig
Source§impl Default for MetricsServiceConfig
impl Default for MetricsServiceConfig
Source§impl Message for MetricsServiceConfig
impl Message for MetricsServiceConfig
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.Source§impl Name for MetricsServiceConfig
impl Name for MetricsServiceConfig
Source§const NAME: &'static str = "MetricsServiceConfig"
const NAME: &'static str = "MetricsServiceConfig"
Message
.
This name is the same as it appears in the source .proto file, e.g. FooBar
.Source§const PACKAGE: &'static str = "envoy.config.metrics.v3"
const PACKAGE: &'static str = "envoy.config.metrics.v3"
.
, e.g. google.protobuf
.Source§fn full_name() -> String
fn full_name() -> String
Message
.
It’s prefixed with the package name and names of any parent messages,
e.g. google.rpc.BadRequest.FieldViolation
.
By default, this is the package name followed by the message name.
Fully-qualified names must be unique within a domain of Type URLs.Source§impl PartialEq for MetricsServiceConfig
impl PartialEq for MetricsServiceConfig
impl StructuralPartialEq for MetricsServiceConfig
Auto Trait Implementations§
impl Freeze for MetricsServiceConfig
impl RefUnwindSafe for MetricsServiceConfig
impl Send for MetricsServiceConfig
impl Sync for MetricsServiceConfig
impl Unpin for MetricsServiceConfig
impl UnwindSafe for MetricsServiceConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request