envoy.config.trace.v2.http_tracer.proto Maven / Gradle / Ivy
syntax = "proto3";
package envoy.config.trace.v2;
import "google/protobuf/any.proto";
import "google/protobuf/struct.proto";
import "udpa/annotations/status.proto";
import "validate/validate.proto";
option java_package = "io.envoyproxy.envoy.config.trace.v2";
option java_outer_classname = "HttpTracerProto";
option java_multiple_files = true;
option go_package = "github.com/envoyproxy/go-control-plane/envoy/config/trace/v2;tracev2";
option (udpa.annotations.file_status).package_version_status = FROZEN;
// [#protodoc-title: Tracing]
// Tracing :ref:`architecture overview `.
// The tracing configuration specifies settings for an HTTP tracer provider used by Envoy.
//
// Envoy may support other tracers in the future, but right now the HTTP tracer is the only one
// supported.
//
// .. attention::
//
// Use of this message type has been deprecated in favor of direct use of
// :ref:`Tracing.Http `.
message Tracing {
// Configuration for an HTTP tracer provider used by Envoy.
//
// The configuration is defined by the
// :ref:`HttpConnectionManager.Tracing `
// :ref:`provider `
// field.
message Http {
// The name of the HTTP trace driver to instantiate. The name must match a
// supported HTTP trace driver. Built-in trace drivers:
//
// - *envoy.tracers.lightstep*
// - *envoy.tracers.zipkin*
// - *envoy.tracers.dynamic_ot*
// - *envoy.tracers.datadog*
// - *envoy.tracers.opencensus*
// - *envoy.tracers.xray*
string name = 1 [(validate.rules).string = {min_bytes: 1}];
// Trace driver specific configuration which depends on the driver being instantiated.
// See the trace drivers for examples:
//
// - :ref:`LightstepConfig `
// - :ref:`ZipkinConfig `
// - :ref:`DynamicOtConfig `
// - :ref:`DatadogConfig `
// - :ref:`OpenCensusConfig `
// - :ref:`AWS X-Ray `
oneof config_type {
google.protobuf.Struct config = 2 [deprecated = true];
google.protobuf.Any typed_config = 3;
}
}
// Provides configuration for the HTTP tracer.
Http http = 1;
}