syntax = "proto3"; package envoy.service.tap.v2alpha; import "envoy/api/v2/discovery.proto"; import "envoy/service/tap/v2alpha/common.proto"; import "google/api/annotations.proto"; import "udpa/annotations/status.proto"; import "validate/validate.proto"; option java_package = "io.envoyproxy.envoy.service.tap.v2alpha"; option java_outer_classname = "TapdsProto"; option java_multiple_files = true; option java_generic_services = true; option (udpa.annotations.file_status).package_version_status = FROZEN; // [#protodoc-title: Tap discovery service] // [#not-implemented-hide:] Tap discovery service. service TapDiscoveryService { rpc StreamTapConfigs(stream api.v2.DiscoveryRequest) returns (stream api.v2.DiscoveryResponse) { } rpc DeltaTapConfigs(stream api.v2.DeltaDiscoveryRequest) returns (stream api.v2.DeltaDiscoveryResponse) { } rpc FetchTapConfigs(api.v2.DiscoveryRequest) returns (api.v2.DiscoveryResponse) { option (google.api.http).post = "/v2/discovery:tap_configs"; option (google.api.http).body = "*"; } } // [#not-implemented-hide:] A tap resource is essentially a tap configuration with a name // The filter TapDS config references this name. message TapResource { // The name of the tap configuration. string name = 1 [(validate.rules).string = {min_bytes: 1}]; // Tap config to apply TapConfig config = 2; }