All Downloads are FREE. Search and download functionalities are using the official Maven repository.

olaris.polaris-all.1.15.2.source-code.fault_detector.proto Maven / Gradle / Ivy

There is a newer version: 2.0.0.0
Show newest version
syntax = "proto3";

package v1;

import "model.proto";

option go_package = "github.com/polarismesh/specification/source/go/api/v1/fault_tolerance";
option java_package = "com.tencent.polaris.specification.api.v1.fault.tolerance";
option java_outer_classname = "FaultDetectorProto";

message FaultDetector {
  // fault detect rules for current service
  repeated FaultDetectRule rules = 1;
  // total revision for the fault detect rules
  string revision = 2;
}

message FaultDetectRule {
  string id = 1;
  // rule name
  string name = 2;
  // namespace of rule
  string namespace = 3;
  // revision routing version
  string revision = 4;
  // ctime create time of the rules
  string ctime = 5;
  // mtime modify time of the rules
  string mtime = 6;
  // description simple description rules
  string description = 7;

  // reserve for metadata
  reserved 8 to 20;

  message DestinationService {
    string service = 1;
    string namespace = 2;
    MatchString method = 3;
  }
  // detect target
  DestinationService target_service = 21;
  // detect interval
  uint32 interval = 22;
  // detect timeout
  uint32 timeout = 23;
  // detect port
  uint32 port = 24;
  // detect protocol
  enum Protocol {
    UNKNOWN = 0;
    HTTP = 1;
    TCP = 2;
    UDP = 3;
  }
  Protocol protocol = 25;
  // http detect config
  HttpProtocolConfig http_config = 26;
  // tcp detect config
  TcpProtocolConfig tcp_config = 27;
  // udp detect config
  UdpProtocolConfig udp_config = 28;
}

message HttpProtocolConfig {
  string method = 1;
  string url = 2;
  message MessageHeader {
    string key = 1;
    string value = 2;
  }
  repeated MessageHeader headers = 3;
  string body = 4;
}

message TcpProtocolConfig {
  string send = 1;
  repeated string receive = 2;
}

message UdpProtocolConfig {
  string send = 1;
  repeated string receive = 2;
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy