Class HttpConnectionManager.Tracing

  • All Implemented Interfaces:
    com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, HttpConnectionManager.TracingOrBuilder, java.io.Serializable
    Enclosing class:
    HttpConnectionManager

    public static final class HttpConnectionManager.Tracing
    extends com.google.protobuf.GeneratedMessage
    implements HttpConnectionManager.TracingOrBuilder
     [#next-free-field: 11]
     
    Protobuf type envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.Tracing
    See Also:
    Serialized Form
    • Field Detail

      • bitField0_

        private int bitField0_
      • CLIENT_SAMPLING_FIELD_NUMBER

        public static final int CLIENT_SAMPLING_FIELD_NUMBER
        See Also:
        Constant Field Values
      • clientSampling_

        private Percent clientSampling_
      • RANDOM_SAMPLING_FIELD_NUMBER

        public static final int RANDOM_SAMPLING_FIELD_NUMBER
        See Also:
        Constant Field Values
      • randomSampling_

        private Percent randomSampling_
      • OVERALL_SAMPLING_FIELD_NUMBER

        public static final int OVERALL_SAMPLING_FIELD_NUMBER
        See Also:
        Constant Field Values
      • overallSampling_

        private Percent overallSampling_
      • verbose_

        private boolean verbose_
      • MAX_PATH_TAG_LENGTH_FIELD_NUMBER

        public static final int MAX_PATH_TAG_LENGTH_FIELD_NUMBER
        See Also:
        Constant Field Values
      • maxPathTagLength_

        private com.google.protobuf.UInt32Value maxPathTagLength_
      • CUSTOM_TAGS_FIELD_NUMBER

        public static final int CUSTOM_TAGS_FIELD_NUMBER
        See Also:
        Constant Field Values
      • customTags_

        private java.util.List<CustomTag> customTags_
      • SPAWN_UPSTREAM_SPAN_FIELD_NUMBER

        public static final int SPAWN_UPSTREAM_SPAN_FIELD_NUMBER
        See Also:
        Constant Field Values
      • spawnUpstreamSpan_

        private com.google.protobuf.BoolValue spawnUpstreamSpan_
      • memoizedIsInitialized

        private byte memoizedIsInitialized
    • Constructor Detail

      • Tracing

        private Tracing​(com.google.protobuf.GeneratedMessage.Builder<?> builder)
      • Tracing

        private Tracing()
    • Method Detail

      • getDescriptor

        public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
      • internalGetFieldAccessorTable

        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage
      • hasClientSampling

        public boolean hasClientSampling()
         Target percentage of requests managed by this HTTP connection manager that will be force
         traced if the :ref:`x-client-trace-id <config_http_conn_man_headers_x-client-trace-id>`
         header is set. This field is a direct analog for the runtime variable
         'tracing.client_enabled' in the :ref:`HTTP Connection Manager
         <config_http_conn_man_runtime>`.
         Default: 100%
         
        .envoy.type.v3.Percent client_sampling = 3;
        Specified by:
        hasClientSampling in interface HttpConnectionManager.TracingOrBuilder
        Returns:
        Whether the clientSampling field is set.
      • getClientSampling

        public Percent getClientSampling()
         Target percentage of requests managed by this HTTP connection manager that will be force
         traced if the :ref:`x-client-trace-id <config_http_conn_man_headers_x-client-trace-id>`
         header is set. This field is a direct analog for the runtime variable
         'tracing.client_enabled' in the :ref:`HTTP Connection Manager
         <config_http_conn_man_runtime>`.
         Default: 100%
         
        .envoy.type.v3.Percent client_sampling = 3;
        Specified by:
        getClientSampling in interface HttpConnectionManager.TracingOrBuilder
        Returns:
        The clientSampling.
      • getClientSamplingOrBuilder

        public PercentOrBuilder getClientSamplingOrBuilder()
         Target percentage of requests managed by this HTTP connection manager that will be force
         traced if the :ref:`x-client-trace-id <config_http_conn_man_headers_x-client-trace-id>`
         header is set. This field is a direct analog for the runtime variable
         'tracing.client_enabled' in the :ref:`HTTP Connection Manager
         <config_http_conn_man_runtime>`.
         Default: 100%
         
        .envoy.type.v3.Percent client_sampling = 3;
        Specified by:
        getClientSamplingOrBuilder in interface HttpConnectionManager.TracingOrBuilder
      • hasRandomSampling

        public boolean hasRandomSampling()
         Target percentage of requests managed by this HTTP connection manager that will be randomly
         selected for trace generation, if not requested by the client or not forced. This field is
         a direct analog for the runtime variable 'tracing.random_sampling' in the
         :ref:`HTTP Connection Manager <config_http_conn_man_runtime>`.
         Default: 100%
         
        .envoy.type.v3.Percent random_sampling = 4;
        Specified by:
        hasRandomSampling in interface HttpConnectionManager.TracingOrBuilder
        Returns:
        Whether the randomSampling field is set.
      • getRandomSampling

        public Percent getRandomSampling()
         Target percentage of requests managed by this HTTP connection manager that will be randomly
         selected for trace generation, if not requested by the client or not forced. This field is
         a direct analog for the runtime variable 'tracing.random_sampling' in the
         :ref:`HTTP Connection Manager <config_http_conn_man_runtime>`.
         Default: 100%
         
        .envoy.type.v3.Percent random_sampling = 4;
        Specified by:
        getRandomSampling in interface HttpConnectionManager.TracingOrBuilder
        Returns:
        The randomSampling.
      • getRandomSamplingOrBuilder

        public PercentOrBuilder getRandomSamplingOrBuilder()
         Target percentage of requests managed by this HTTP connection manager that will be randomly
         selected for trace generation, if not requested by the client or not forced. This field is
         a direct analog for the runtime variable 'tracing.random_sampling' in the
         :ref:`HTTP Connection Manager <config_http_conn_man_runtime>`.
         Default: 100%
         
        .envoy.type.v3.Percent random_sampling = 4;
        Specified by:
        getRandomSamplingOrBuilder in interface HttpConnectionManager.TracingOrBuilder
      • hasOverallSampling

        public boolean hasOverallSampling()
         Target percentage of requests managed by this HTTP connection manager that will be traced
         after all other sampling checks have been applied (client-directed, force tracing, random
         sampling). This field functions as an upper limit on the total configured sampling rate. For
         instance, setting client_sampling to 100% but overall_sampling to 1% will result in only 1%
         of client requests with the appropriate headers to be force traced. This field is a direct
         analog for the runtime variable 'tracing.global_enabled' in the
         :ref:`HTTP Connection Manager <config_http_conn_man_runtime>`.
         Default: 100%
         
        .envoy.type.v3.Percent overall_sampling = 5;
        Specified by:
        hasOverallSampling in interface HttpConnectionManager.TracingOrBuilder
        Returns:
        Whether the overallSampling field is set.
      • getOverallSampling

        public Percent getOverallSampling()
         Target percentage of requests managed by this HTTP connection manager that will be traced
         after all other sampling checks have been applied (client-directed, force tracing, random
         sampling). This field functions as an upper limit on the total configured sampling rate. For
         instance, setting client_sampling to 100% but overall_sampling to 1% will result in only 1%
         of client requests with the appropriate headers to be force traced. This field is a direct
         analog for the runtime variable 'tracing.global_enabled' in the
         :ref:`HTTP Connection Manager <config_http_conn_man_runtime>`.
         Default: 100%
         
        .envoy.type.v3.Percent overall_sampling = 5;
        Specified by:
        getOverallSampling in interface HttpConnectionManager.TracingOrBuilder
        Returns:
        The overallSampling.
      • getOverallSamplingOrBuilder

        public PercentOrBuilder getOverallSamplingOrBuilder()
         Target percentage of requests managed by this HTTP connection manager that will be traced
         after all other sampling checks have been applied (client-directed, force tracing, random
         sampling). This field functions as an upper limit on the total configured sampling rate. For
         instance, setting client_sampling to 100% but overall_sampling to 1% will result in only 1%
         of client requests with the appropriate headers to be force traced. This field is a direct
         analog for the runtime variable 'tracing.global_enabled' in the
         :ref:`HTTP Connection Manager <config_http_conn_man_runtime>`.
         Default: 100%
         
        .envoy.type.v3.Percent overall_sampling = 5;
        Specified by:
        getOverallSamplingOrBuilder in interface HttpConnectionManager.TracingOrBuilder
      • getVerbose

        public boolean getVerbose()
         Whether to annotate spans with additional data. If true, spans will include logs for stream
         events.
         
        bool verbose = 6;
        Specified by:
        getVerbose in interface HttpConnectionManager.TracingOrBuilder
        Returns:
        The verbose.
      • hasMaxPathTagLength

        public boolean hasMaxPathTagLength()
         Maximum length of the request path to extract and include in the HttpUrl tag. Used to
         truncate lengthy request paths to meet the needs of a tracing backend.
         Default: 256
         
        .google.protobuf.UInt32Value max_path_tag_length = 7;
        Specified by:
        hasMaxPathTagLength in interface HttpConnectionManager.TracingOrBuilder
        Returns:
        Whether the maxPathTagLength field is set.
      • getMaxPathTagLength

        public com.google.protobuf.UInt32Value getMaxPathTagLength()
         Maximum length of the request path to extract and include in the HttpUrl tag. Used to
         truncate lengthy request paths to meet the needs of a tracing backend.
         Default: 256
         
        .google.protobuf.UInt32Value max_path_tag_length = 7;
        Specified by:
        getMaxPathTagLength in interface HttpConnectionManager.TracingOrBuilder
        Returns:
        The maxPathTagLength.
      • getMaxPathTagLengthOrBuilder

        public com.google.protobuf.UInt32ValueOrBuilder getMaxPathTagLengthOrBuilder()
         Maximum length of the request path to extract and include in the HttpUrl tag. Used to
         truncate lengthy request paths to meet the needs of a tracing backend.
         Default: 256
         
        .google.protobuf.UInt32Value max_path_tag_length = 7;
        Specified by:
        getMaxPathTagLengthOrBuilder in interface HttpConnectionManager.TracingOrBuilder
      • hasProvider

        public boolean hasProvider()
         Configuration for an external tracing provider.
         If not specified, no tracing will be performed.
        
         .. attention::
         Please be aware that ``envoy.tracers.opencensus`` provider can only be configured once
         in Envoy lifetime.
         Any attempts to reconfigure it or to use different configurations for different HCM filters
         will be rejected.
         Such a constraint is inherent to OpenCensus itself. It cannot be overcome without changes
         on OpenCensus side.
         
        .envoy.config.trace.v3.Tracing.Http provider = 9;
        Specified by:
        hasProvider in interface HttpConnectionManager.TracingOrBuilder
        Returns:
        Whether the provider field is set.
      • getProvider

        public Tracing.Http getProvider()
         Configuration for an external tracing provider.
         If not specified, no tracing will be performed.
        
         .. attention::
         Please be aware that ``envoy.tracers.opencensus`` provider can only be configured once
         in Envoy lifetime.
         Any attempts to reconfigure it or to use different configurations for different HCM filters
         will be rejected.
         Such a constraint is inherent to OpenCensus itself. It cannot be overcome without changes
         on OpenCensus side.
         
        .envoy.config.trace.v3.Tracing.Http provider = 9;
        Specified by:
        getProvider in interface HttpConnectionManager.TracingOrBuilder
        Returns:
        The provider.
      • getProviderOrBuilder

        public Tracing.HttpOrBuilder getProviderOrBuilder()
         Configuration for an external tracing provider.
         If not specified, no tracing will be performed.
        
         .. attention::
         Please be aware that ``envoy.tracers.opencensus`` provider can only be configured once
         in Envoy lifetime.
         Any attempts to reconfigure it or to use different configurations for different HCM filters
         will be rejected.
         Such a constraint is inherent to OpenCensus itself. It cannot be overcome without changes
         on OpenCensus side.
         
        .envoy.config.trace.v3.Tracing.Http provider = 9;
        Specified by:
        getProviderOrBuilder in interface HttpConnectionManager.TracingOrBuilder
      • hasSpawnUpstreamSpan

        public boolean hasSpawnUpstreamSpan()
         Create separate tracing span for each upstream request if true. And if this flag is set to true,
         the tracing provider will assume that Envoy will be independent hop in the trace chain and may
         set span type to client or server based on this flag.
         This will deprecate the
         :ref:`start_child_span <envoy_v3_api_field_extensions.filters.http.router.v3.Router.start_child_span>`
         in the router.
        
         Users should set appropriate value based on their tracing provider and actual scenario:
        
         * If Envoy is used as sidecar and users want to make the sidecar and its application as only one
         hop in the trace chain, this flag should be set to false. And please also make sure the
         :ref:`start_child_span <envoy_v3_api_field_extensions.filters.http.router.v3.Router.start_child_span>`
         in the router is not set to true.
         * If Envoy is used as gateway or independent proxy, or users want to make the sidecar and its
         application as different hops in the trace chain, this flag should be set to true.
         * If tracing provider that has explicit requirements on span creation (like SkyWalking),
         this flag should be set to true.
        
         The default value is false for now for backward compatibility.
         
        .google.protobuf.BoolValue spawn_upstream_span = 10;
        Specified by:
        hasSpawnUpstreamSpan in interface HttpConnectionManager.TracingOrBuilder
        Returns:
        Whether the spawnUpstreamSpan field is set.
      • getSpawnUpstreamSpan

        public com.google.protobuf.BoolValue getSpawnUpstreamSpan()
         Create separate tracing span for each upstream request if true. And if this flag is set to true,
         the tracing provider will assume that Envoy will be independent hop in the trace chain and may
         set span type to client or server based on this flag.
         This will deprecate the
         :ref:`start_child_span <envoy_v3_api_field_extensions.filters.http.router.v3.Router.start_child_span>`
         in the router.
        
         Users should set appropriate value based on their tracing provider and actual scenario:
        
         * If Envoy is used as sidecar and users want to make the sidecar and its application as only one
         hop in the trace chain, this flag should be set to false. And please also make sure the
         :ref:`start_child_span <envoy_v3_api_field_extensions.filters.http.router.v3.Router.start_child_span>`
         in the router is not set to true.
         * If Envoy is used as gateway or independent proxy, or users want to make the sidecar and its
         application as different hops in the trace chain, this flag should be set to true.
         * If tracing provider that has explicit requirements on span creation (like SkyWalking),
         this flag should be set to true.
        
         The default value is false for now for backward compatibility.
         
        .google.protobuf.BoolValue spawn_upstream_span = 10;
        Specified by:
        getSpawnUpstreamSpan in interface HttpConnectionManager.TracingOrBuilder
        Returns:
        The spawnUpstreamSpan.
      • getSpawnUpstreamSpanOrBuilder

        public com.google.protobuf.BoolValueOrBuilder getSpawnUpstreamSpanOrBuilder()
         Create separate tracing span for each upstream request if true. And if this flag is set to true,
         the tracing provider will assume that Envoy will be independent hop in the trace chain and may
         set span type to client or server based on this flag.
         This will deprecate the
         :ref:`start_child_span <envoy_v3_api_field_extensions.filters.http.router.v3.Router.start_child_span>`
         in the router.
        
         Users should set appropriate value based on their tracing provider and actual scenario:
        
         * If Envoy is used as sidecar and users want to make the sidecar and its application as only one
         hop in the trace chain, this flag should be set to false. And please also make sure the
         :ref:`start_child_span <envoy_v3_api_field_extensions.filters.http.router.v3.Router.start_child_span>`
         in the router is not set to true.
         * If Envoy is used as gateway or independent proxy, or users want to make the sidecar and its
         application as different hops in the trace chain, this flag should be set to true.
         * If tracing provider that has explicit requirements on span creation (like SkyWalking),
         this flag should be set to true.
        
         The default value is false for now for backward compatibility.
         
        .google.protobuf.BoolValue spawn_upstream_span = 10;
        Specified by:
        getSpawnUpstreamSpanOrBuilder in interface HttpConnectionManager.TracingOrBuilder
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessage
      • writeTo

        public void writeTo​(com.google.protobuf.CodedOutputStream output)
                     throws java.io.IOException
        Specified by:
        writeTo in interface com.google.protobuf.MessageLite
        Overrides:
        writeTo in class com.google.protobuf.GeneratedMessage
        Throws:
        java.io.IOException
      • getSerializedSize

        public int getSerializedSize()
        Specified by:
        getSerializedSize in interface com.google.protobuf.MessageLite
        Overrides:
        getSerializedSize in class com.google.protobuf.GeneratedMessage
      • equals

        public boolean equals​(java.lang.Object obj)
        Specified by:
        equals in interface com.google.protobuf.Message
        Overrides:
        equals in class com.google.protobuf.AbstractMessage
      • hashCode

        public int hashCode()
        Specified by:
        hashCode in interface com.google.protobuf.Message
        Overrides:
        hashCode in class com.google.protobuf.AbstractMessage
      • parseFrom

        public static HttpConnectionManager.Tracing parseFrom​(java.nio.ByteBuffer data)
                                                       throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static HttpConnectionManager.Tracing parseFrom​(java.nio.ByteBuffer data,
                                                              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                       throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static HttpConnectionManager.Tracing parseFrom​(com.google.protobuf.ByteString data)
                                                       throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static HttpConnectionManager.Tracing parseFrom​(com.google.protobuf.ByteString data,
                                                              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                       throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static HttpConnectionManager.Tracing parseFrom​(byte[] data)
                                                       throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static HttpConnectionManager.Tracing parseFrom​(byte[] data,
                                                              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                       throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static HttpConnectionManager.Tracing parseFrom​(java.io.InputStream input)
                                                       throws java.io.IOException
        Throws:
        java.io.IOException
      • parseFrom

        public static HttpConnectionManager.Tracing parseFrom​(java.io.InputStream input,
                                                              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                       throws java.io.IOException
        Throws:
        java.io.IOException
      • parseDelimitedFrom

        public static HttpConnectionManager.Tracing parseDelimitedFrom​(java.io.InputStream input)
                                                                throws java.io.IOException
        Throws:
        java.io.IOException
      • parseDelimitedFrom

        public static HttpConnectionManager.Tracing parseDelimitedFrom​(java.io.InputStream input,
                                                                       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                                throws java.io.IOException
        Throws:
        java.io.IOException
      • parseFrom

        public static HttpConnectionManager.Tracing parseFrom​(com.google.protobuf.CodedInputStream input)
                                                       throws java.io.IOException
        Throws:
        java.io.IOException
      • parseFrom

        public static HttpConnectionManager.Tracing parseFrom​(com.google.protobuf.CodedInputStream input,
                                                              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                       throws java.io.IOException
        Throws:
        java.io.IOException
      • newBuilderForType

        public HttpConnectionManager.Tracing.Builder newBuilderForType()
        Specified by:
        newBuilderForType in interface com.google.protobuf.Message
        Specified by:
        newBuilderForType in interface com.google.protobuf.MessageLite
      • toBuilder

        public HttpConnectionManager.Tracing.Builder toBuilder()
        Specified by:
        toBuilder in interface com.google.protobuf.Message
        Specified by:
        toBuilder in interface com.google.protobuf.MessageLite
      • newBuilderForType

        protected HttpConnectionManager.Tracing.Builder newBuilderForType​(com.google.protobuf.AbstractMessage.BuilderParent parent)
        Overrides:
        newBuilderForType in class com.google.protobuf.AbstractMessage
      • getParserForType

        public com.google.protobuf.Parser<HttpConnectionManager.Tracing> getParserForType()
        Specified by:
        getParserForType in interface com.google.protobuf.Message
        Specified by:
        getParserForType in interface com.google.protobuf.MessageLite
        Overrides:
        getParserForType in class com.google.protobuf.GeneratedMessage
      • getDefaultInstanceForType

        public HttpConnectionManager.Tracing getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder