| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- syntax = "proto3";
- package v2ray.core.app.observatory;
- option csharp_namespace = "V2Ray.Core.App.Observatory";
- option go_package = "github.com/v2fly/v2ray-core/v5/app/observatory";
- option java_package = "com.v2ray.core.app.observatory";
- option java_multiple_files = true;
- import "common/protoext/extensions.proto";
- message ObservationResult {
- repeated OutboundStatus status = 1;
- }
- message HealthPingMeasurementResult {
- int64 all = 1;
- int64 fail = 2;
- int64 deviation = 3;
- int64 average = 4;
- int64 max = 5;
- int64 min = 6;
- }
- message OutboundStatus{
- /* @Document Whether this outbound is usable
- @Restriction ReadOnlyForUser
- */
- bool alive = 1;
- /* @Document The time for probe request to finish.
- @Type time.ms
- @Restriction ReadOnlyForUser
- */
- int64 delay = 2;
- /* @Document The last error caused this outbound failed to relay probe request
- @Restriction NotMachineReadable
- */
- string last_error_reason = 3;
- /* @Document The outbound tag for this Server
- @Type id.outboundTag
- */
- string outbound_tag = 4;
- /* @Document The time this outbound is known to be alive
- @Type id.outboundTag
- */
- int64 last_seen_time = 5;
- /* @Document The time this outbound is tried
- @Type id.outboundTag
- */
- int64 last_try_time = 6;
- HealthPingMeasurementResult health_ping = 7;
- }
- message ProbeResult{
- /* @Document Whether this outbound is usable
- @Restriction ReadOnlyForUser
- */
- bool alive = 1;
- /* @Document The time for probe request to finish.
- @Type time.ms
- @Restriction ReadOnlyForUser
- */
- int64 delay = 2;
- /* @Document The error caused this outbound failed to relay probe request
- @Restriction NotMachineReadable
- */
- string last_error_reason = 3;
- }
- message Intensity{
- /* @Document The time interval for a probe request in ms.
- @Type time.ms
- */
- uint32 probe_interval = 1;
- }
- message Config {
- option (v2ray.core.common.protoext.message_opt).type = "service";
- option (v2ray.core.common.protoext.message_opt).short_name = "backgroundObservatory";
- /* @Document The selectors for outbound under observation
- */
- repeated string subject_selector = 2;
- string probe_url = 3;
- int64 probe_interval = 4;
- bool persistent_probe_result = 5;
- }
|