...
1syntax = "proto3";
2
3package envoy.extensions.common.tap.v3;
4
5import "envoy/config/tap/v3/common.proto";
6
7import "udpa/annotations/migrate.proto";
8import "udpa/annotations/status.proto";
9import "udpa/annotations/versioning.proto";
10import "validate/validate.proto";
11
12option java_package = "io.envoyproxy.envoy.extensions.common.tap.v3";
13option java_outer_classname = "CommonProto";
14option java_multiple_files = true;
15option (udpa.annotations.file_status).package_version_status = ACTIVE;
16
17// [#protodoc-title: Common tap extension configuration]
18
19// Common configuration for all tap extensions.
20message CommonExtensionConfig {
21 option (udpa.annotations.versioning).previous_message_type =
22 "envoy.config.common.tap.v2alpha.CommonExtensionConfig";
23
24 oneof config_type {
25 option (validate.required) = true;
26
27 // If specified, the tap filter will be configured via an admin handler.
28 AdminConfig admin_config = 1;
29
30 // If specified, the tap filter will be configured via a static configuration that cannot be
31 // changed.
32 config.tap.v3.TapConfig static_config = 2;
33 }
34}
35
36// Configuration for the admin handler. See :ref:`here <config_http_filters_tap_admin_handler>` for
37// more information.
38message AdminConfig {
39 option (udpa.annotations.versioning).previous_message_type =
40 "envoy.config.common.tap.v2alpha.AdminConfig";
41
42 // Opaque configuration ID. When requests are made to the admin handler, the passed opaque ID is
43 // matched to the configured filter opaque ID to determine which filter to configure.
44 string config_id = 1 [(validate.rules).string = {min_len: 1}];
45}
View as plain text