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  }