Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions api/v1/service_manage/response.proto
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ import "contract.proto";
import "lane.proto";
import "lossless.proto";
import "block_allow_list.proto";
import "traffic_mirroring.proto";

option go_package = "github.com/polarismesh/specification/source/go/api/v1/service_manage";
option java_package = "com.tencent.polaris.specification.api.v1.service.manage";
Expand Down Expand Up @@ -129,6 +130,8 @@ message DiscoverResponse {
repeated LosslessRule losslessRules = 25;
// 服务黑白名单鉴权规则
repeated BlockAllowListRule blockAllowListRule = 26;
// 流量镜像规则内容
repeated TrafficMirroring trafficMirroring = 27;
}

message OptionSwitch { map<string, string> options = 1; }
Expand Down
31 changes: 31 additions & 0 deletions api/v1/traffic_manage/traffic_mirroring.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
syntax = "proto3";

package v1;

import "google/protobuf/wrappers.proto";
import "google/protobuf/any.proto";
import "model.proto";
import "routing.proto";

option go_package = "github.com/polarismesh/specification/source/go/api/v1/traffic_manage";
option java_package = "com.tencent.polaris.specification.api.v1.traffic.manage";
option java_outer_classname = "TrafficMirroringProto";

message TrafficMirroring {
// 规则所属服务以及命名空间
google.protobuf.StringValue service = 1;
google.protobuf.StringValue namespace = 2;
google.protobuf.StringValue revision = 3;

// 开关
google.protobuf.BoolValue enabled = 4;
// 流量来源匹配规则,判断哪些流量需要镜像
repeated Source sources = 5;
// 流量镜像百分比(0.0-100.0)
google.protobuf.FloatValue mirroringPercent = 6;
// 流量目标匹配规则,判断流量需要镜像到哪些地方
repeated Destination destinations = 7;

google.protobuf.StringValue ctime = 20;
google.protobuf.StringValue mtime = 21;
}