config.pb.go 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552
  1. package observatory
  2. import (
  3. _ "github.com/v2fly/v2ray-core/v5/common/protoext"
  4. protoreflect "google.golang.org/protobuf/reflect/protoreflect"
  5. protoimpl "google.golang.org/protobuf/runtime/protoimpl"
  6. reflect "reflect"
  7. sync "sync"
  8. unsafe "unsafe"
  9. )
  10. const (
  11. // Verify that this generated code is sufficiently up-to-date.
  12. _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
  13. // Verify that runtime/protoimpl is sufficiently up-to-date.
  14. _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
  15. )
  16. type ObservationResult struct {
  17. state protoimpl.MessageState `protogen:"open.v1"`
  18. Status []*OutboundStatus `protobuf:"bytes,1,rep,name=status,proto3" json:"status,omitempty"`
  19. unknownFields protoimpl.UnknownFields
  20. sizeCache protoimpl.SizeCache
  21. }
  22. func (x *ObservationResult) Reset() {
  23. *x = ObservationResult{}
  24. mi := &file_app_observatory_config_proto_msgTypes[0]
  25. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  26. ms.StoreMessageInfo(mi)
  27. }
  28. func (x *ObservationResult) String() string {
  29. return protoimpl.X.MessageStringOf(x)
  30. }
  31. func (*ObservationResult) ProtoMessage() {}
  32. func (x *ObservationResult) ProtoReflect() protoreflect.Message {
  33. mi := &file_app_observatory_config_proto_msgTypes[0]
  34. if x != nil {
  35. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  36. if ms.LoadMessageInfo() == nil {
  37. ms.StoreMessageInfo(mi)
  38. }
  39. return ms
  40. }
  41. return mi.MessageOf(x)
  42. }
  43. // Deprecated: Use ObservationResult.ProtoReflect.Descriptor instead.
  44. func (*ObservationResult) Descriptor() ([]byte, []int) {
  45. return file_app_observatory_config_proto_rawDescGZIP(), []int{0}
  46. }
  47. func (x *ObservationResult) GetStatus() []*OutboundStatus {
  48. if x != nil {
  49. return x.Status
  50. }
  51. return nil
  52. }
  53. type HealthPingMeasurementResult struct {
  54. state protoimpl.MessageState `protogen:"open.v1"`
  55. All int64 `protobuf:"varint,1,opt,name=all,proto3" json:"all,omitempty"`
  56. Fail int64 `protobuf:"varint,2,opt,name=fail,proto3" json:"fail,omitempty"`
  57. Deviation int64 `protobuf:"varint,3,opt,name=deviation,proto3" json:"deviation,omitempty"`
  58. Average int64 `protobuf:"varint,4,opt,name=average,proto3" json:"average,omitempty"`
  59. Max int64 `protobuf:"varint,5,opt,name=max,proto3" json:"max,omitempty"`
  60. Min int64 `protobuf:"varint,6,opt,name=min,proto3" json:"min,omitempty"`
  61. unknownFields protoimpl.UnknownFields
  62. sizeCache protoimpl.SizeCache
  63. }
  64. func (x *HealthPingMeasurementResult) Reset() {
  65. *x = HealthPingMeasurementResult{}
  66. mi := &file_app_observatory_config_proto_msgTypes[1]
  67. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  68. ms.StoreMessageInfo(mi)
  69. }
  70. func (x *HealthPingMeasurementResult) String() string {
  71. return protoimpl.X.MessageStringOf(x)
  72. }
  73. func (*HealthPingMeasurementResult) ProtoMessage() {}
  74. func (x *HealthPingMeasurementResult) ProtoReflect() protoreflect.Message {
  75. mi := &file_app_observatory_config_proto_msgTypes[1]
  76. if x != nil {
  77. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  78. if ms.LoadMessageInfo() == nil {
  79. ms.StoreMessageInfo(mi)
  80. }
  81. return ms
  82. }
  83. return mi.MessageOf(x)
  84. }
  85. // Deprecated: Use HealthPingMeasurementResult.ProtoReflect.Descriptor instead.
  86. func (*HealthPingMeasurementResult) Descriptor() ([]byte, []int) {
  87. return file_app_observatory_config_proto_rawDescGZIP(), []int{1}
  88. }
  89. func (x *HealthPingMeasurementResult) GetAll() int64 {
  90. if x != nil {
  91. return x.All
  92. }
  93. return 0
  94. }
  95. func (x *HealthPingMeasurementResult) GetFail() int64 {
  96. if x != nil {
  97. return x.Fail
  98. }
  99. return 0
  100. }
  101. func (x *HealthPingMeasurementResult) GetDeviation() int64 {
  102. if x != nil {
  103. return x.Deviation
  104. }
  105. return 0
  106. }
  107. func (x *HealthPingMeasurementResult) GetAverage() int64 {
  108. if x != nil {
  109. return x.Average
  110. }
  111. return 0
  112. }
  113. func (x *HealthPingMeasurementResult) GetMax() int64 {
  114. if x != nil {
  115. return x.Max
  116. }
  117. return 0
  118. }
  119. func (x *HealthPingMeasurementResult) GetMin() int64 {
  120. if x != nil {
  121. return x.Min
  122. }
  123. return 0
  124. }
  125. type OutboundStatus struct {
  126. state protoimpl.MessageState `protogen:"open.v1"`
  127. // @Document Whether this outbound is usable
  128. // @Restriction ReadOnlyForUser
  129. Alive bool `protobuf:"varint,1,opt,name=alive,proto3" json:"alive,omitempty"`
  130. // @Document The time for probe request to finish.
  131. // @Type time.ms
  132. // @Restriction ReadOnlyForUser
  133. Delay int64 `protobuf:"varint,2,opt,name=delay,proto3" json:"delay,omitempty"`
  134. // @Document The last error caused this outbound failed to relay probe request
  135. // @Restriction NotMachineReadable
  136. LastErrorReason string `protobuf:"bytes,3,opt,name=last_error_reason,json=lastErrorReason,proto3" json:"last_error_reason,omitempty"`
  137. // @Document The outbound tag for this Server
  138. // @Type id.outboundTag
  139. OutboundTag string `protobuf:"bytes,4,opt,name=outbound_tag,json=outboundTag,proto3" json:"outbound_tag,omitempty"`
  140. // @Document The time this outbound is known to be alive
  141. // @Type id.outboundTag
  142. LastSeenTime int64 `protobuf:"varint,5,opt,name=last_seen_time,json=lastSeenTime,proto3" json:"last_seen_time,omitempty"`
  143. // @Document The time this outbound is tried
  144. // @Type id.outboundTag
  145. LastTryTime int64 `protobuf:"varint,6,opt,name=last_try_time,json=lastTryTime,proto3" json:"last_try_time,omitempty"`
  146. HealthPing *HealthPingMeasurementResult `protobuf:"bytes,7,opt,name=health_ping,json=healthPing,proto3" json:"health_ping,omitempty"`
  147. unknownFields protoimpl.UnknownFields
  148. sizeCache protoimpl.SizeCache
  149. }
  150. func (x *OutboundStatus) Reset() {
  151. *x = OutboundStatus{}
  152. mi := &file_app_observatory_config_proto_msgTypes[2]
  153. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  154. ms.StoreMessageInfo(mi)
  155. }
  156. func (x *OutboundStatus) String() string {
  157. return protoimpl.X.MessageStringOf(x)
  158. }
  159. func (*OutboundStatus) ProtoMessage() {}
  160. func (x *OutboundStatus) ProtoReflect() protoreflect.Message {
  161. mi := &file_app_observatory_config_proto_msgTypes[2]
  162. if x != nil {
  163. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  164. if ms.LoadMessageInfo() == nil {
  165. ms.StoreMessageInfo(mi)
  166. }
  167. return ms
  168. }
  169. return mi.MessageOf(x)
  170. }
  171. // Deprecated: Use OutboundStatus.ProtoReflect.Descriptor instead.
  172. func (*OutboundStatus) Descriptor() ([]byte, []int) {
  173. return file_app_observatory_config_proto_rawDescGZIP(), []int{2}
  174. }
  175. func (x *OutboundStatus) GetAlive() bool {
  176. if x != nil {
  177. return x.Alive
  178. }
  179. return false
  180. }
  181. func (x *OutboundStatus) GetDelay() int64 {
  182. if x != nil {
  183. return x.Delay
  184. }
  185. return 0
  186. }
  187. func (x *OutboundStatus) GetLastErrorReason() string {
  188. if x != nil {
  189. return x.LastErrorReason
  190. }
  191. return ""
  192. }
  193. func (x *OutboundStatus) GetOutboundTag() string {
  194. if x != nil {
  195. return x.OutboundTag
  196. }
  197. return ""
  198. }
  199. func (x *OutboundStatus) GetLastSeenTime() int64 {
  200. if x != nil {
  201. return x.LastSeenTime
  202. }
  203. return 0
  204. }
  205. func (x *OutboundStatus) GetLastTryTime() int64 {
  206. if x != nil {
  207. return x.LastTryTime
  208. }
  209. return 0
  210. }
  211. func (x *OutboundStatus) GetHealthPing() *HealthPingMeasurementResult {
  212. if x != nil {
  213. return x.HealthPing
  214. }
  215. return nil
  216. }
  217. type ProbeResult struct {
  218. state protoimpl.MessageState `protogen:"open.v1"`
  219. // @Document Whether this outbound is usable
  220. // @Restriction ReadOnlyForUser
  221. Alive bool `protobuf:"varint,1,opt,name=alive,proto3" json:"alive,omitempty"`
  222. // @Document The time for probe request to finish.
  223. // @Type time.ms
  224. // @Restriction ReadOnlyForUser
  225. Delay int64 `protobuf:"varint,2,opt,name=delay,proto3" json:"delay,omitempty"`
  226. // @Document The error caused this outbound failed to relay probe request
  227. // @Restriction NotMachineReadable
  228. LastErrorReason string `protobuf:"bytes,3,opt,name=last_error_reason,json=lastErrorReason,proto3" json:"last_error_reason,omitempty"`
  229. unknownFields protoimpl.UnknownFields
  230. sizeCache protoimpl.SizeCache
  231. }
  232. func (x *ProbeResult) Reset() {
  233. *x = ProbeResult{}
  234. mi := &file_app_observatory_config_proto_msgTypes[3]
  235. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  236. ms.StoreMessageInfo(mi)
  237. }
  238. func (x *ProbeResult) String() string {
  239. return protoimpl.X.MessageStringOf(x)
  240. }
  241. func (*ProbeResult) ProtoMessage() {}
  242. func (x *ProbeResult) ProtoReflect() protoreflect.Message {
  243. mi := &file_app_observatory_config_proto_msgTypes[3]
  244. if x != nil {
  245. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  246. if ms.LoadMessageInfo() == nil {
  247. ms.StoreMessageInfo(mi)
  248. }
  249. return ms
  250. }
  251. return mi.MessageOf(x)
  252. }
  253. // Deprecated: Use ProbeResult.ProtoReflect.Descriptor instead.
  254. func (*ProbeResult) Descriptor() ([]byte, []int) {
  255. return file_app_observatory_config_proto_rawDescGZIP(), []int{3}
  256. }
  257. func (x *ProbeResult) GetAlive() bool {
  258. if x != nil {
  259. return x.Alive
  260. }
  261. return false
  262. }
  263. func (x *ProbeResult) GetDelay() int64 {
  264. if x != nil {
  265. return x.Delay
  266. }
  267. return 0
  268. }
  269. func (x *ProbeResult) GetLastErrorReason() string {
  270. if x != nil {
  271. return x.LastErrorReason
  272. }
  273. return ""
  274. }
  275. type Intensity struct {
  276. state protoimpl.MessageState `protogen:"open.v1"`
  277. // @Document The time interval for a probe request in ms.
  278. // @Type time.ms
  279. ProbeInterval uint32 `protobuf:"varint,1,opt,name=probe_interval,json=probeInterval,proto3" json:"probe_interval,omitempty"`
  280. unknownFields protoimpl.UnknownFields
  281. sizeCache protoimpl.SizeCache
  282. }
  283. func (x *Intensity) Reset() {
  284. *x = Intensity{}
  285. mi := &file_app_observatory_config_proto_msgTypes[4]
  286. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  287. ms.StoreMessageInfo(mi)
  288. }
  289. func (x *Intensity) String() string {
  290. return protoimpl.X.MessageStringOf(x)
  291. }
  292. func (*Intensity) ProtoMessage() {}
  293. func (x *Intensity) ProtoReflect() protoreflect.Message {
  294. mi := &file_app_observatory_config_proto_msgTypes[4]
  295. if x != nil {
  296. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  297. if ms.LoadMessageInfo() == nil {
  298. ms.StoreMessageInfo(mi)
  299. }
  300. return ms
  301. }
  302. return mi.MessageOf(x)
  303. }
  304. // Deprecated: Use Intensity.ProtoReflect.Descriptor instead.
  305. func (*Intensity) Descriptor() ([]byte, []int) {
  306. return file_app_observatory_config_proto_rawDescGZIP(), []int{4}
  307. }
  308. func (x *Intensity) GetProbeInterval() uint32 {
  309. if x != nil {
  310. return x.ProbeInterval
  311. }
  312. return 0
  313. }
  314. type Config struct {
  315. state protoimpl.MessageState `protogen:"open.v1"`
  316. // @Document The selectors for outbound under observation
  317. SubjectSelector []string `protobuf:"bytes,2,rep,name=subject_selector,json=subjectSelector,proto3" json:"subject_selector,omitempty"`
  318. ProbeUrl string `protobuf:"bytes,3,opt,name=probe_url,json=probeUrl,proto3" json:"probe_url,omitempty"`
  319. ProbeInterval int64 `protobuf:"varint,4,opt,name=probe_interval,json=probeInterval,proto3" json:"probe_interval,omitempty"`
  320. unknownFields protoimpl.UnknownFields
  321. sizeCache protoimpl.SizeCache
  322. }
  323. func (x *Config) Reset() {
  324. *x = Config{}
  325. mi := &file_app_observatory_config_proto_msgTypes[5]
  326. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  327. ms.StoreMessageInfo(mi)
  328. }
  329. func (x *Config) String() string {
  330. return protoimpl.X.MessageStringOf(x)
  331. }
  332. func (*Config) ProtoMessage() {}
  333. func (x *Config) ProtoReflect() protoreflect.Message {
  334. mi := &file_app_observatory_config_proto_msgTypes[5]
  335. if x != nil {
  336. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  337. if ms.LoadMessageInfo() == nil {
  338. ms.StoreMessageInfo(mi)
  339. }
  340. return ms
  341. }
  342. return mi.MessageOf(x)
  343. }
  344. // Deprecated: Use Config.ProtoReflect.Descriptor instead.
  345. func (*Config) Descriptor() ([]byte, []int) {
  346. return file_app_observatory_config_proto_rawDescGZIP(), []int{5}
  347. }
  348. func (x *Config) GetSubjectSelector() []string {
  349. if x != nil {
  350. return x.SubjectSelector
  351. }
  352. return nil
  353. }
  354. func (x *Config) GetProbeUrl() string {
  355. if x != nil {
  356. return x.ProbeUrl
  357. }
  358. return ""
  359. }
  360. func (x *Config) GetProbeInterval() int64 {
  361. if x != nil {
  362. return x.ProbeInterval
  363. }
  364. return 0
  365. }
  366. var File_app_observatory_config_proto protoreflect.FileDescriptor
  367. var file_app_observatory_config_proto_rawDesc = string([]byte{
  368. 0x0a, 0x1c, 0x61, 0x70, 0x70, 0x2f, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x6f, 0x72,
  369. 0x79, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1a,
  370. 0x76, 0x32, 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x70, 0x70, 0x2e, 0x6f,
  371. 0x62, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x6f, 0x72, 0x79, 0x1a, 0x20, 0x63, 0x6f, 0x6d, 0x6d,
  372. 0x6f, 0x6e, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x65, 0x78, 0x74, 0x2f, 0x65, 0x78, 0x74, 0x65,
  373. 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x57, 0x0a, 0x11,
  374. 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c,
  375. 0x74, 0x12, 0x42, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
  376. 0x0b, 0x32, 0x2a, 0x2e, 0x76, 0x32, 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x61,
  377. 0x70, 0x70, 0x2e, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x4f,
  378. 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73,
  379. 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x9f, 0x01, 0x0a, 0x1b, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68,
  380. 0x50, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52,
  381. 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x61, 0x6c, 0x6c, 0x18, 0x01, 0x20, 0x01,
  382. 0x28, 0x03, 0x52, 0x03, 0x61, 0x6c, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x61, 0x69, 0x6c, 0x18,
  383. 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x66, 0x61, 0x69, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x64,
  384. 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09,
  385. 0x64, 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x76, 0x65,
  386. 0x72, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x61, 0x76, 0x65, 0x72,
  387. 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x61, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03,
  388. 0x52, 0x03, 0x6d, 0x61, 0x78, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01,
  389. 0x28, 0x03, 0x52, 0x03, 0x6d, 0x69, 0x6e, 0x22, 0xaf, 0x02, 0x0a, 0x0e, 0x4f, 0x75, 0x74, 0x62,
  390. 0x6f, 0x75, 0x6e, 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c,
  391. 0x69, 0x76, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x76, 0x65,
  392. 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52,
  393. 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x2a, 0x0a, 0x11, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x65,
  394. 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28,
  395. 0x09, 0x52, 0x0f, 0x6c, 0x61, 0x73, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x61, 0x73,
  396. 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x74,
  397. 0x61, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75,
  398. 0x6e, 0x64, 0x54, 0x61, 0x67, 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x65,
  399. 0x65, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6c,
  400. 0x61, 0x73, 0x74, 0x53, 0x65, 0x65, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x6c,
  401. 0x61, 0x73, 0x74, 0x5f, 0x74, 0x72, 0x79, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01,
  402. 0x28, 0x03, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x54, 0x72, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x12,
  403. 0x58, 0x0a, 0x0b, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x07,
  404. 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x76, 0x32, 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x72,
  405. 0x65, 0x2e, 0x61, 0x70, 0x70, 0x2e, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x6f, 0x72,
  406. 0x79, 0x2e, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x50, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x61, 0x73,
  407. 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0a, 0x68,
  408. 0x65, 0x61, 0x6c, 0x74, 0x68, 0x50, 0x69, 0x6e, 0x67, 0x22, 0x65, 0x0a, 0x0b, 0x50, 0x72, 0x6f,
  409. 0x62, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x76,
  410. 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x76, 0x65, 0x12, 0x14,
  411. 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x64,
  412. 0x65, 0x6c, 0x61, 0x79, 0x12, 0x2a, 0x0a, 0x11, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x65, 0x72, 0x72,
  413. 0x6f, 0x72, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
  414. 0x0f, 0x6c, 0x61, 0x73, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e,
  415. 0x22, 0x32, 0x0a, 0x09, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x79, 0x12, 0x25, 0x0a,
  416. 0x0e, 0x70, 0x72, 0x6f, 0x62, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18,
  417. 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x72, 0x6f, 0x62, 0x65, 0x49, 0x6e, 0x74, 0x65,
  418. 0x72, 0x76, 0x61, 0x6c, 0x22, 0x9d, 0x01, 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12,
  419. 0x29, 0x0a, 0x10, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63,
  420. 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x75, 0x62, 0x6a, 0x65,
  421. 0x63, 0x74, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x72,
  422. 0x6f, 0x62, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70,
  423. 0x72, 0x6f, 0x62, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x6f, 0x62, 0x65,
  424. 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52,
  425. 0x0d, 0x70, 0x72, 0x6f, 0x62, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x3a, 0x24,
  426. 0x82, 0xb5, 0x18, 0x20, 0x0a, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x15, 0x62,
  427. 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x61,
  428. 0x74, 0x6f, 0x72, 0x79, 0x42, 0x6f, 0x0a, 0x1e, 0x63, 0x6f, 0x6d, 0x2e, 0x76, 0x32, 0x72, 0x61,
  429. 0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x61, 0x70, 0x70, 0x2e, 0x6f, 0x62, 0x73, 0x65, 0x72,
  430. 0x76, 0x61, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x01, 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62,
  431. 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x76, 0x32, 0x66, 0x6c, 0x79, 0x2f, 0x76, 0x32, 0x72, 0x61, 0x79,
  432. 0x2d, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x76, 0x35, 0x2f, 0x61, 0x70, 0x70, 0x2f, 0x6f, 0x62, 0x73,
  433. 0x65, 0x72, 0x76, 0x61, 0x74, 0x6f, 0x72, 0x79, 0xaa, 0x02, 0x1a, 0x56, 0x32, 0x52, 0x61, 0x79,
  434. 0x2e, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x41, 0x70, 0x70, 0x2e, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76,
  435. 0x61, 0x74, 0x6f, 0x72, 0x79, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
  436. })
  437. var (
  438. file_app_observatory_config_proto_rawDescOnce sync.Once
  439. file_app_observatory_config_proto_rawDescData []byte
  440. )
  441. func file_app_observatory_config_proto_rawDescGZIP() []byte {
  442. file_app_observatory_config_proto_rawDescOnce.Do(func() {
  443. file_app_observatory_config_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_app_observatory_config_proto_rawDesc), len(file_app_observatory_config_proto_rawDesc)))
  444. })
  445. return file_app_observatory_config_proto_rawDescData
  446. }
  447. var file_app_observatory_config_proto_msgTypes = make([]protoimpl.MessageInfo, 6)
  448. var file_app_observatory_config_proto_goTypes = []any{
  449. (*ObservationResult)(nil), // 0: v2ray.core.app.observatory.ObservationResult
  450. (*HealthPingMeasurementResult)(nil), // 1: v2ray.core.app.observatory.HealthPingMeasurementResult
  451. (*OutboundStatus)(nil), // 2: v2ray.core.app.observatory.OutboundStatus
  452. (*ProbeResult)(nil), // 3: v2ray.core.app.observatory.ProbeResult
  453. (*Intensity)(nil), // 4: v2ray.core.app.observatory.Intensity
  454. (*Config)(nil), // 5: v2ray.core.app.observatory.Config
  455. }
  456. var file_app_observatory_config_proto_depIdxs = []int32{
  457. 2, // 0: v2ray.core.app.observatory.ObservationResult.status:type_name -> v2ray.core.app.observatory.OutboundStatus
  458. 1, // 1: v2ray.core.app.observatory.OutboundStatus.health_ping:type_name -> v2ray.core.app.observatory.HealthPingMeasurementResult
  459. 2, // [2:2] is the sub-list for method output_type
  460. 2, // [2:2] is the sub-list for method input_type
  461. 2, // [2:2] is the sub-list for extension type_name
  462. 2, // [2:2] is the sub-list for extension extendee
  463. 0, // [0:2] is the sub-list for field type_name
  464. }
  465. func init() { file_app_observatory_config_proto_init() }
  466. func file_app_observatory_config_proto_init() {
  467. if File_app_observatory_config_proto != nil {
  468. return
  469. }
  470. type x struct{}
  471. out := protoimpl.TypeBuilder{
  472. File: protoimpl.DescBuilder{
  473. GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  474. RawDescriptor: unsafe.Slice(unsafe.StringData(file_app_observatory_config_proto_rawDesc), len(file_app_observatory_config_proto_rawDesc)),
  475. NumEnums: 0,
  476. NumMessages: 6,
  477. NumExtensions: 0,
  478. NumServices: 0,
  479. },
  480. GoTypes: file_app_observatory_config_proto_goTypes,
  481. DependencyIndexes: file_app_observatory_config_proto_depIdxs,
  482. MessageInfos: file_app_observatory_config_proto_msgTypes,
  483. }.Build()
  484. File_app_observatory_config_proto = out.File
  485. file_app_observatory_config_proto_goTypes = nil
  486. file_app_observatory_config_proto_depIdxs = nil
  487. }