github.com/xtls/xray-core@v1.8.12-0.20240518155711-3168d27b0bdb/app/observatory/config.proto (about) 1 syntax = "proto3"; 2 3 package xray.core.app.observatory; 4 option csharp_namespace = "Xray.App.Observatory"; 5 option go_package = "github.com/xtls/xray-core/app/observatory"; 6 option java_package = "com.xray.app.observatory"; 7 option java_multiple_files = true; 8 9 message ObservationResult { 10 repeated OutboundStatus status = 1; 11 } 12 13 message HealthPingMeasurementResult { 14 int64 all = 1; 15 int64 fail = 2; 16 int64 deviation = 3; 17 int64 average = 4; 18 int64 max = 5; 19 int64 min = 6; 20 } 21 22 message OutboundStatus{ 23 /* @Document Whether this outbound is usable 24 @Restriction ReadOnlyForUser 25 */ 26 bool alive = 1; 27 /* @Document The time for probe request to finish. 28 @Type time.ms 29 @Restriction ReadOnlyForUser 30 */ 31 int64 delay = 2; 32 /* @Document The last error caused this outbound failed to relay probe request 33 @Restriction NotMachineReadable 34 */ 35 string last_error_reason = 3; 36 /* @Document The outbound tag for this Server 37 @Type id.outboundTag 38 */ 39 string outbound_tag = 4; 40 /* @Document The time this outbound is known to be alive 41 @Type id.outboundTag 42 */ 43 int64 last_seen_time = 5; 44 /* @Document The time this outbound is tried 45 @Type id.outboundTag 46 */ 47 int64 last_try_time = 6; 48 49 HealthPingMeasurementResult health_ping = 7; 50 } 51 52 message ProbeResult{ 53 /* @Document Whether this outbound is usable 54 @Restriction ReadOnlyForUser 55 */ 56 bool alive = 1; 57 /* @Document The time for probe request to finish. 58 @Type time.ms 59 @Restriction ReadOnlyForUser 60 */ 61 int64 delay = 2; 62 /* @Document The error caused this outbound failed to relay probe request 63 @Restriction NotMachineReadable 64 */ 65 string last_error_reason = 3; 66 } 67 68 message Intensity{ 69 /* @Document The time interval for a probe request in ms. 70 @Type time.ms 71 */ 72 uint32 probe_interval = 1; 73 } 74 message Config { 75 /* @Document The selectors for outbound under observation 76 */ 77 repeated string subject_selector = 2; 78 79 string probe_url = 3; 80 81 int64 probe_interval = 4; 82 83 bool enable_concurrency = 5; 84 }