Class UuidRequestIdConfig.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<BuilderT>
com.google.protobuf.GeneratedMessageV3.Builder<UuidRequestIdConfig.Builder>
io.envoyproxy.envoy.extensions.request_id.uuid.v3.UuidRequestIdConfig.Builder
All Implemented Interfaces:
com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, UuidRequestIdConfigOrBuilder, Cloneable
Enclosing class:
UuidRequestIdConfig

public static final class UuidRequestIdConfig.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<UuidRequestIdConfig.Builder> implements UuidRequestIdConfigOrBuilder
 Configuration for the default UUID request ID extension which has the following behavior:

 1. Request ID is propagated using the :ref:`x-request-id
    <config_http_conn_man_headers_x-request-id>` header.

 2. Request ID is a universally unique identifier `(UUID4)
    <https://en.wikipedia.org/wiki/Universally_unique_identifier#Version_4_(random)>`_.

 3. Tracing decision (sampled, forced, etc) is set in 14th nibble of the UUID. By default this will
    overwrite existing UUIDs received in the ``x-request-id`` header if the trace sampling decision
    is changed. The 14th nibble of the UUID4 has been chosen because it is fixed to '4' by the
    standard. Thus, '4' indicates a default UUID and no trace status. This nibble is swapped to:

      a. '9': Sampled.
      b. 'a': Force traced due to server-side override.
      c. 'b': Force traced due to client-side request ID joining.

    See the :ref:`x-request-id <config_http_conn_man_headers_x-request-id>` documentation for
    more information.
 
Protobuf type envoy.extensions.request_id.uuid.v3.UuidRequestIdConfig
  • Method Details

    • getDescriptor

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

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3.Builder<UuidRequestIdConfig.Builder>
    • clear

      Specified by:
      clear in interface com.google.protobuf.Message.Builder
      Specified by:
      clear in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clear in class com.google.protobuf.GeneratedMessageV3.Builder<UuidRequestIdConfig.Builder>
    • getDescriptorForType

      public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
      Specified by:
      getDescriptorForType in interface com.google.protobuf.Message.Builder
      Specified by:
      getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
      Overrides:
      getDescriptorForType in class com.google.protobuf.GeneratedMessageV3.Builder<UuidRequestIdConfig.Builder>
    • getDefaultInstanceForType

      public UuidRequestIdConfig getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
    • build

      public UuidRequestIdConfig build()
      Specified by:
      build in interface com.google.protobuf.Message.Builder
      Specified by:
      build in interface com.google.protobuf.MessageLite.Builder
    • buildPartial

      public UuidRequestIdConfig buildPartial()
      Specified by:
      buildPartial in interface com.google.protobuf.Message.Builder
      Specified by:
      buildPartial in interface com.google.protobuf.MessageLite.Builder
    • clone

      Specified by:
      clone in interface com.google.protobuf.Message.Builder
      Specified by:
      clone in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clone in class com.google.protobuf.GeneratedMessageV3.Builder<UuidRequestIdConfig.Builder>
    • setField

      public UuidRequestIdConfig.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
      Specified by:
      setField in interface com.google.protobuf.Message.Builder
      Overrides:
      setField in class com.google.protobuf.GeneratedMessageV3.Builder<UuidRequestIdConfig.Builder>
    • clearField

      public UuidRequestIdConfig.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
      Specified by:
      clearField in interface com.google.protobuf.Message.Builder
      Overrides:
      clearField in class com.google.protobuf.GeneratedMessageV3.Builder<UuidRequestIdConfig.Builder>
    • clearOneof

      public UuidRequestIdConfig.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
      Specified by:
      clearOneof in interface com.google.protobuf.Message.Builder
      Overrides:
      clearOneof in class com.google.protobuf.GeneratedMessageV3.Builder<UuidRequestIdConfig.Builder>
    • setRepeatedField

      public UuidRequestIdConfig.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)
      Specified by:
      setRepeatedField in interface com.google.protobuf.Message.Builder
      Overrides:
      setRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<UuidRequestIdConfig.Builder>
    • addRepeatedField

      public UuidRequestIdConfig.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
      Specified by:
      addRepeatedField in interface com.google.protobuf.Message.Builder
      Overrides:
      addRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<UuidRequestIdConfig.Builder>
    • mergeFrom

      public UuidRequestIdConfig.Builder mergeFrom(com.google.protobuf.Message other)
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<UuidRequestIdConfig.Builder>
    • mergeFrom

    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessageV3.Builder<UuidRequestIdConfig.Builder>
    • mergeFrom

      public UuidRequestIdConfig.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Specified by:
      mergeFrom in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<UuidRequestIdConfig.Builder>
      Throws:
      IOException
    • hasPackTraceReason

      public boolean hasPackTraceReason()
       Whether the implementation alters the UUID to contain the trace sampling decision as per the
       ``UuidRequestIdConfig`` message documentation. This defaults to true. If disabled no
       modification to the UUID will be performed. It is important to note that if disabled,
       stable sampling of traces, access logs, etc. will no longer work and only random sampling will
       be possible.
       
      .google.protobuf.BoolValue pack_trace_reason = 1;
      Specified by:
      hasPackTraceReason in interface UuidRequestIdConfigOrBuilder
      Returns:
      Whether the packTraceReason field is set.
    • getPackTraceReason

      public com.google.protobuf.BoolValue getPackTraceReason()
       Whether the implementation alters the UUID to contain the trace sampling decision as per the
       ``UuidRequestIdConfig`` message documentation. This defaults to true. If disabled no
       modification to the UUID will be performed. It is important to note that if disabled,
       stable sampling of traces, access logs, etc. will no longer work and only random sampling will
       be possible.
       
      .google.protobuf.BoolValue pack_trace_reason = 1;
      Specified by:
      getPackTraceReason in interface UuidRequestIdConfigOrBuilder
      Returns:
      The packTraceReason.
    • setPackTraceReason

      public UuidRequestIdConfig.Builder setPackTraceReason(com.google.protobuf.BoolValue value)
       Whether the implementation alters the UUID to contain the trace sampling decision as per the
       ``UuidRequestIdConfig`` message documentation. This defaults to true. If disabled no
       modification to the UUID will be performed. It is important to note that if disabled,
       stable sampling of traces, access logs, etc. will no longer work and only random sampling will
       be possible.
       
      .google.protobuf.BoolValue pack_trace_reason = 1;
    • setPackTraceReason

      public UuidRequestIdConfig.Builder setPackTraceReason(com.google.protobuf.BoolValue.Builder builderForValue)
       Whether the implementation alters the UUID to contain the trace sampling decision as per the
       ``UuidRequestIdConfig`` message documentation. This defaults to true. If disabled no
       modification to the UUID will be performed. It is important to note that if disabled,
       stable sampling of traces, access logs, etc. will no longer work and only random sampling will
       be possible.
       
      .google.protobuf.BoolValue pack_trace_reason = 1;
    • mergePackTraceReason

      public UuidRequestIdConfig.Builder mergePackTraceReason(com.google.protobuf.BoolValue value)
       Whether the implementation alters the UUID to contain the trace sampling decision as per the
       ``UuidRequestIdConfig`` message documentation. This defaults to true. If disabled no
       modification to the UUID will be performed. It is important to note that if disabled,
       stable sampling of traces, access logs, etc. will no longer work and only random sampling will
       be possible.
       
      .google.protobuf.BoolValue pack_trace_reason = 1;
    • clearPackTraceReason

      public UuidRequestIdConfig.Builder clearPackTraceReason()
       Whether the implementation alters the UUID to contain the trace sampling decision as per the
       ``UuidRequestIdConfig`` message documentation. This defaults to true. If disabled no
       modification to the UUID will be performed. It is important to note that if disabled,
       stable sampling of traces, access logs, etc. will no longer work and only random sampling will
       be possible.
       
      .google.protobuf.BoolValue pack_trace_reason = 1;
    • getPackTraceReasonBuilder

      public com.google.protobuf.BoolValue.Builder getPackTraceReasonBuilder()
       Whether the implementation alters the UUID to contain the trace sampling decision as per the
       ``UuidRequestIdConfig`` message documentation. This defaults to true. If disabled no
       modification to the UUID will be performed. It is important to note that if disabled,
       stable sampling of traces, access logs, etc. will no longer work and only random sampling will
       be possible.
       
      .google.protobuf.BoolValue pack_trace_reason = 1;
    • getPackTraceReasonOrBuilder

      public com.google.protobuf.BoolValueOrBuilder getPackTraceReasonOrBuilder()
       Whether the implementation alters the UUID to contain the trace sampling decision as per the
       ``UuidRequestIdConfig`` message documentation. This defaults to true. If disabled no
       modification to the UUID will be performed. It is important to note that if disabled,
       stable sampling of traces, access logs, etc. will no longer work and only random sampling will
       be possible.
       
      .google.protobuf.BoolValue pack_trace_reason = 1;
      Specified by:
      getPackTraceReasonOrBuilder in interface UuidRequestIdConfigOrBuilder
    • hasUseRequestIdForTraceSampling

      public boolean hasUseRequestIdForTraceSampling()
       Set whether to use :ref:`x-request-id<config_http_conn_man_headers_x-request-id>` for sampling or not.
       This defaults to true. See the :ref:`context propagation <arch_overview_tracing_context_propagation>`
       overview for more information.
       
      .google.protobuf.BoolValue use_request_id_for_trace_sampling = 2;
      Specified by:
      hasUseRequestIdForTraceSampling in interface UuidRequestIdConfigOrBuilder
      Returns:
      Whether the useRequestIdForTraceSampling field is set.
    • getUseRequestIdForTraceSampling

      public com.google.protobuf.BoolValue getUseRequestIdForTraceSampling()
       Set whether to use :ref:`x-request-id<config_http_conn_man_headers_x-request-id>` for sampling or not.
       This defaults to true. See the :ref:`context propagation <arch_overview_tracing_context_propagation>`
       overview for more information.
       
      .google.protobuf.BoolValue use_request_id_for_trace_sampling = 2;
      Specified by:
      getUseRequestIdForTraceSampling in interface UuidRequestIdConfigOrBuilder
      Returns:
      The useRequestIdForTraceSampling.
    • setUseRequestIdForTraceSampling

      public UuidRequestIdConfig.Builder setUseRequestIdForTraceSampling(com.google.protobuf.BoolValue value)
       Set whether to use :ref:`x-request-id<config_http_conn_man_headers_x-request-id>` for sampling or not.
       This defaults to true. See the :ref:`context propagation <arch_overview_tracing_context_propagation>`
       overview for more information.
       
      .google.protobuf.BoolValue use_request_id_for_trace_sampling = 2;
    • setUseRequestIdForTraceSampling

      public UuidRequestIdConfig.Builder setUseRequestIdForTraceSampling(com.google.protobuf.BoolValue.Builder builderForValue)
       Set whether to use :ref:`x-request-id<config_http_conn_man_headers_x-request-id>` for sampling or not.
       This defaults to true. See the :ref:`context propagation <arch_overview_tracing_context_propagation>`
       overview for more information.
       
      .google.protobuf.BoolValue use_request_id_for_trace_sampling = 2;
    • mergeUseRequestIdForTraceSampling

      public UuidRequestIdConfig.Builder mergeUseRequestIdForTraceSampling(com.google.protobuf.BoolValue value)
       Set whether to use :ref:`x-request-id<config_http_conn_man_headers_x-request-id>` for sampling or not.
       This defaults to true. See the :ref:`context propagation <arch_overview_tracing_context_propagation>`
       overview for more information.
       
      .google.protobuf.BoolValue use_request_id_for_trace_sampling = 2;
    • clearUseRequestIdForTraceSampling

      public UuidRequestIdConfig.Builder clearUseRequestIdForTraceSampling()
       Set whether to use :ref:`x-request-id<config_http_conn_man_headers_x-request-id>` for sampling or not.
       This defaults to true. See the :ref:`context propagation <arch_overview_tracing_context_propagation>`
       overview for more information.
       
      .google.protobuf.BoolValue use_request_id_for_trace_sampling = 2;
    • getUseRequestIdForTraceSamplingBuilder

      public com.google.protobuf.BoolValue.Builder getUseRequestIdForTraceSamplingBuilder()
       Set whether to use :ref:`x-request-id<config_http_conn_man_headers_x-request-id>` for sampling or not.
       This defaults to true. See the :ref:`context propagation <arch_overview_tracing_context_propagation>`
       overview for more information.
       
      .google.protobuf.BoolValue use_request_id_for_trace_sampling = 2;
    • getUseRequestIdForTraceSamplingOrBuilder

      public com.google.protobuf.BoolValueOrBuilder getUseRequestIdForTraceSamplingOrBuilder()
       Set whether to use :ref:`x-request-id<config_http_conn_man_headers_x-request-id>` for sampling or not.
       This defaults to true. See the :ref:`context propagation <arch_overview_tracing_context_propagation>`
       overview for more information.
       
      .google.protobuf.BoolValue use_request_id_for_trace_sampling = 2;
      Specified by:
      getUseRequestIdForTraceSamplingOrBuilder in interface UuidRequestIdConfigOrBuilder
    • setUnknownFields

      public final UuidRequestIdConfig.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
      Specified by:
      setUnknownFields in interface com.google.protobuf.Message.Builder
      Overrides:
      setUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<UuidRequestIdConfig.Builder>
    • mergeUnknownFields

      public final UuidRequestIdConfig.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
      Specified by:
      mergeUnknownFields in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<UuidRequestIdConfig.Builder>