]>
Commit | Line | Data |
---|---|---|
f67539c2 TL |
1 | # Copyright (c) 2016 Uber Technologies, Inc. |
2 | # | |
3 | # Licensed under the Apache License, Version 2.0 (the "License"); | |
4 | # you may not use this file except in compliance with the License. | |
5 | # You may obtain a copy of the License at | |
6 | # | |
7 | # http://www.apache.org/licenses/LICENSE-2.0 | |
8 | # | |
9 | # Unless required by applicable law or agreed to in writing, software | |
10 | # distributed under the License is distributed on an "AS IS" BASIS, | |
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
12 | # See the License for the specific language governing permissions and | |
13 | # limitations under the License. | |
14 | ||
15 | namespace cpp jaegertracing.crossdock.thrift | |
16 | namespace java io.jaegertracing.crossdock.thrift | |
17 | namespace php Jaeger.Thrift.Crossdock | |
18 | namespace netcore Jaeger.Thrift.Crossdock | |
19 | ||
20 | enum Transport { HTTP, TCHANNEL, DUMMY } | |
21 | ||
22 | struct Downstream { | |
23 | 1: required string serviceName | |
24 | 2: required string serverRole | |
25 | 3: required string host | |
26 | 4: required string port | |
27 | 5: required Transport transport | |
28 | 6: optional Downstream downstream | |
29 | } | |
30 | ||
31 | struct StartTraceRequest { | |
32 | 1: required string serverRole // role of the server (always S1) | |
33 | 2: required bool sampled | |
34 | 3: required string baggage | |
35 | 4: required Downstream downstream | |
36 | } | |
37 | ||
38 | struct JoinTraceRequest { | |
39 | 1: required string serverRole // role of the server, S2 or S3 | |
40 | 2: optional Downstream downstream | |
41 | } | |
42 | ||
43 | struct ObservedSpan { | |
44 | 1: required string traceId | |
45 | 2: required bool sampled | |
46 | 3: required string baggage | |
47 | } | |
48 | ||
49 | /** | |
50 | * Each server must include the information about the span it observed. | |
51 | * It can only be omitted from the response if notImplementedError field is not empty. | |
52 | * If the server was instructed to make a downstream call, it must embed the | |
53 | * downstream response in its own response. | |
54 | */ | |
55 | struct TraceResponse { | |
56 | 1: optional ObservedSpan span | |
57 | 2: optional TraceResponse downstream | |
58 | 3: required string notImplementedError | |
59 | } | |
60 | ||
61 | service TracedService { | |
62 | TraceResponse startTrace(1: StartTraceRequest request) | |
63 | TraceResponse joinTrace(1: JoinTraceRequest request) | |
64 | } |