github.com/kiali/kiali@v1.84.0/tracing/jaeger/query.proto (about) 1 // Copyright (c) 2019 The Jaeger Authors. 2 // Copyright (c) 2018 Uber Technologies, Inc. 3 // 4 // Licensed under the Apache License, Version 2.0 (the "License"); 5 // you may not use this file except in compliance with the License. 6 // You may obtain a copy of the License at 7 // 8 // http://www.apache.org/licenses/LICENSE-2.0 9 // 10 // Unless required by applicable law or agreed to in writing, software 11 // distributed under the License is distributed on an "AS IS" BASIS, 12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 // See the License for the specific language governing permissions and 14 // limitations under the License. 15 16 syntax="proto3"; 17 18 package jaeger.api_v2; 19 20 import "model.proto"; 21 import "google/api/annotations.proto"; 22 import "google/protobuf/timestamp.proto"; 23 import "google/protobuf/duration.proto"; 24 25 option go_package = ".;model"; 26 27 28 message GetTraceRequest { 29 bytes trace_id = 1; 30 } 31 32 message SpansResponseChunk { 33 repeated jaeger.api_v2.Span spans = 1; 34 } 35 36 message ArchiveTraceRequest { 37 bytes trace_id = 1; 38 } 39 40 message ArchiveTraceResponse { 41 } 42 43 message TraceQueryParameters { 44 string service_name = 1; 45 string operation_name = 2; 46 map<string, string> tags = 3; 47 google.protobuf.Timestamp start_time_min = 4; 48 google.protobuf.Timestamp start_time_max = 5; 49 google.protobuf.Duration duration_min = 6; 50 google.protobuf.Duration duration_max = 7; 51 int32 search_depth = 8; 52 } 53 54 message FindTracesRequest { 55 TraceQueryParameters query = 1; 56 } 57 58 message GetServicesRequest {} 59 60 message GetServicesResponse { 61 repeated string services = 1; 62 } 63 64 message GetOperationsRequest { 65 string service = 1; 66 string span_kind = 2; 67 } 68 69 message Operation { 70 string name = 1; 71 string span_kind = 2; 72 } 73 74 message GetOperationsResponse { 75 repeated string operationNames = 1; //deprecated 76 repeated Operation operations = 2; 77 } 78 79 message GetDependenciesRequest { 80 google.protobuf.Timestamp start_time = 1; 81 google.protobuf.Timestamp end_time = 2; 82 } 83 84 message GetDependenciesResponse { 85 repeated jaeger.api_v2.DependencyLink dependencies = 1; 86 } 87 88 service QueryService { 89 rpc GetTrace(GetTraceRequest) returns (stream SpansResponseChunk) { 90 option (google.api.http) = { 91 get: "/traces/{trace_id}" 92 }; 93 } 94 95 rpc ArchiveTrace(ArchiveTraceRequest) returns (ArchiveTraceResponse) { 96 option (google.api.http) = { 97 post: "/archive/{trace_id}" 98 }; 99 } 100 101 rpc FindTraces(FindTracesRequest) returns (stream SpansResponseChunk) { 102 option (google.api.http) = { 103 post: "/search" 104 body: "*" 105 }; 106 } 107 108 rpc GetServices(GetServicesRequest) returns (GetServicesResponse) { 109 option (google.api.http) = { 110 get: "/services" 111 }; 112 } 113 114 rpc GetOperations(GetOperationsRequest) returns (GetOperationsResponse) { 115 option (google.api.http) = { 116 get: "/operations" 117 }; 118 } 119 120 rpc GetDependencies(GetDependenciesRequest) returns (GetDependenciesResponse) { 121 option (google.api.http) = { 122 get: "/dependencies" 123 }; 124 } 125 }