Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(38)

Side by Side Diff: generated/googleapis/lib/tracing/v2.dart

Issue 2987103002: Api-Roll 52: 2017-07-31 (Closed)
Patch Set: Created 3 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // This is a generated file (see the discoveryapis_generator project).
2
3 library googleapis.tracing.v2;
4
5 import 'dart:core' as core;
6 import 'dart:async' as async;
7 import 'dart:convert' as convert;
8
9 import 'package:_discoveryapis_commons/_discoveryapis_commons.dart' as commons;
10 import 'package:http/http.dart' as http;
11
12 export 'package:_discoveryapis_commons/_discoveryapis_commons.dart' show
13 ApiRequestError, DetailedApiRequestError;
14
15 const core.String USER_AGENT = 'dart-api-client tracing/v2';
16
17 /** Send and retrieve trace data from Google Stackdriver Trace. */
18 class TracingApi {
19 /** View and manage your data across Google Cloud Platform services */
20 static const CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platf orm";
21
22 /** Write Trace data for a project or application */
23 static const TraceAppendScope = "https://www.googleapis.com/auth/trace.append" ;
24
25 /** Read Trace data for a project or application */
26 static const TraceReadonlyScope = "https://www.googleapis.com/auth/trace.reado nly";
27
28
29 final commons.ApiRequester _requester;
30
31 ProjectsResourceApi get projects => new ProjectsResourceApi(_requester);
32
33 TracingApi(http.Client client, {core.String rootUrl: "https://tracing.googleap is.com/", core.String servicePath: ""}) :
34 _requester = new commons.ApiRequester(client, rootUrl, servicePath, USER_A GENT);
35 }
36
37
38 class ProjectsResourceApi {
39 final commons.ApiRequester _requester;
40
41 ProjectsTracesResourceApi get traces => new ProjectsTracesResourceApi(_request er);
42
43 ProjectsResourceApi(commons.ApiRequester client) :
44 _requester = client;
45 }
46
47
48 class ProjectsTracesResourceApi {
49 final commons.ApiRequester _requester;
50
51 ProjectsTracesSpansResourceApi get spans => new ProjectsTracesSpansResourceApi (_requester);
52
53 ProjectsTracesResourceApi(commons.ApiRequester client) :
54 _requester = client;
55
56 /**
57 * Sends new spans to Stackdriver Trace or updates existing traces. If the
58 * name of a trace that you send matches that of an existing trace, new spans
59 * are added to the existing trace. Attempt to update existing spans results
60 * undefined behavior. If the name does not match, a new trace is created
61 * with given set of spans.
62 *
63 * [request] - The metadata request object.
64 *
65 * Request parameters:
66 *
67 * [name] - Name of the project where the spans belong to. Format is
68 * `projects/PROJECT_ID`.
69 * Value must have pattern "^projects/[^/]+$".
70 *
71 * Completes with a [Empty].
72 *
73 * Completes with a [commons.ApiRequestError] if the API endpoint returned an
74 * error.
75 *
76 * If the used [http.Client] completes with an error when making a REST call,
77 * this method will complete with the same error.
78 */
79 async.Future<Empty> batchWrite(BatchWriteSpansRequest request, core.String nam e) {
80 var _url = null;
81 var _queryParams = new core.Map();
82 var _uploadMedia = null;
83 var _uploadOptions = null;
84 var _downloadOptions = commons.DownloadOptions.Metadata;
85 var _body = null;
86
87 if (request != null) {
88 _body = convert.JSON.encode((request).toJson());
89 }
90 if (name == null) {
91 throw new core.ArgumentError("Parameter name is required.");
92 }
93
94 _url = 'v2/' + commons.Escaper.ecapeVariableReserved('$name') + '/traces:bat chWrite';
95
96 var _response = _requester.request(_url,
97 "POST",
98 body: _body,
99 queryParams: _queryParams,
100 uploadOptions: _uploadOptions,
101 uploadMedia: _uploadMedia,
102 downloadOptions: _downloadOptions);
103 return _response.then((data) => new Empty.fromJson(data));
104 }
105
106 /**
107 * Returns of a list of traces that match the specified filter conditions.
108 *
109 * Request parameters:
110 *
111 * [parent] - ID of the Cloud project where the trace data is stored which is
112 * `projects/PROJECT_ID`.
113 * Value must have pattern "^projects/[^/]+$".
114 *
115 * [orderBy] - Field used to sort the returned traces. Optional.
116 * Can be one of the following:
117 *
118 * * `trace_id`
119 * * `name` (`name` field of root span in the trace)
120 * * `duration` (difference between `end_time` and `start_time` fields of
121 * the root span)
122 * * `start` (`start_time` field of the root span)
123 *
124 * Descending order can be specified by appending `desc` to the sort field
125 * (for example, `name desc`).
126 *
127 * Only one sort field is permitted.
128 *
129 * [filter] - An optional filter for the request.
130 * Example:
131 * `version_label_key:a some_label:some_label_key`
132 * returns traces from version `a` and has `some_label` with `some_label_key`.
133 *
134 * [endTime] - End of the time interval (inclusive) during which the trace
135 * data was
136 * collected from the application.
137 *
138 * [pageToken] - Token identifying the page of results to return. If provided,
139 * use the
140 * value of the `next_page_token` field from a previous request. Optional.
141 *
142 * [startTime] - Start of the time interval (inclusive) during which the trace
143 * data was
144 * collected from the application.
145 *
146 * [pageSize] - Maximum number of traces to return. If not specified or <= 0,
147 * the
148 * implementation selects a reasonable value. The implementation may
149 * return fewer traces than the requested page size. Optional.
150 *
151 * Completes with a [ListTracesResponse].
152 *
153 * Completes with a [commons.ApiRequestError] if the API endpoint returned an
154 * error.
155 *
156 * If the used [http.Client] completes with an error when making a REST call,
157 * this method will complete with the same error.
158 */
159 async.Future<ListTracesResponse> list(core.String parent, {core.String orderBy , core.String filter, core.String endTime, core.String pageToken, core.String st artTime, core.int pageSize}) {
160 var _url = null;
161 var _queryParams = new core.Map();
162 var _uploadMedia = null;
163 var _uploadOptions = null;
164 var _downloadOptions = commons.DownloadOptions.Metadata;
165 var _body = null;
166
167 if (parent == null) {
168 throw new core.ArgumentError("Parameter parent is required.");
169 }
170 if (orderBy != null) {
171 _queryParams["orderBy"] = [orderBy];
172 }
173 if (filter != null) {
174 _queryParams["filter"] = [filter];
175 }
176 if (endTime != null) {
177 _queryParams["endTime"] = [endTime];
178 }
179 if (pageToken != null) {
180 _queryParams["pageToken"] = [pageToken];
181 }
182 if (startTime != null) {
183 _queryParams["startTime"] = [startTime];
184 }
185 if (pageSize != null) {
186 _queryParams["pageSize"] = ["${pageSize}"];
187 }
188
189 _url = 'v2/' + commons.Escaper.ecapeVariableReserved('$parent') + '/traces';
190
191 var _response = _requester.request(_url,
192 "GET",
193 body: _body,
194 queryParams: _queryParams,
195 uploadOptions: _uploadOptions,
196 uploadMedia: _uploadMedia,
197 downloadOptions: _downloadOptions);
198 return _response.then((data) => new ListTracesResponse.fromJson(data));
199 }
200
201 /**
202 * Returns a list of spans within a trace.
203 *
204 * Request parameters:
205 *
206 * [parent] - ID of the trace for which to list child spans. Format is
207 * `projects/PROJECT_ID/traces/TRACE_ID`.
208 * Value must have pattern "^projects/[^/]+/traces/[^/]+$".
209 *
210 * [pageToken] - Token identifying the page of results to return. If provided,
211 * use the
212 * value of the `nextPageToken` field from a previous request. Optional.
213 *
214 * Completes with a [ListSpansResponse].
215 *
216 * Completes with a [commons.ApiRequestError] if the API endpoint returned an
217 * error.
218 *
219 * If the used [http.Client] completes with an error when making a REST call,
220 * this method will complete with the same error.
221 */
222 async.Future<ListSpansResponse> listSpans(core.String parent, {core.String pag eToken}) {
223 var _url = null;
224 var _queryParams = new core.Map();
225 var _uploadMedia = null;
226 var _uploadOptions = null;
227 var _downloadOptions = commons.DownloadOptions.Metadata;
228 var _body = null;
229
230 if (parent == null) {
231 throw new core.ArgumentError("Parameter parent is required.");
232 }
233 if (pageToken != null) {
234 _queryParams["pageToken"] = [pageToken];
235 }
236
237 _url = 'v2/' + commons.Escaper.ecapeVariableReserved('$parent') + ':listSpan s';
238
239 var _response = _requester.request(_url,
240 "GET",
241 body: _body,
242 queryParams: _queryParams,
243 uploadOptions: _uploadOptions,
244 uploadMedia: _uploadMedia,
245 downloadOptions: _downloadOptions);
246 return _response.then((data) => new ListSpansResponse.fromJson(data));
247 }
248
249 }
250
251
252 class ProjectsTracesSpansResourceApi {
253 final commons.ApiRequester _requester;
254
255 ProjectsTracesSpansResourceApi(commons.ApiRequester client) :
256 _requester = client;
257
258 /**
259 * Creates a new Span.
260 *
261 * [request] - The metadata request object.
262 *
263 * Request parameters:
264 *
265 * [name] - The resource name of Span in the format
266 * `projects/PROJECT_ID/traces/TRACE_ID/spans/SPAN_ID`.
267 * `TRACE_ID` is a unique identifier for a trace within a project and is a
268 * base16-encoded, case-insensitive string and is required to be 32 char long.
269 * `SPAN_ID` is a unique identifier for a span within a trace. It is a
270 * base 16-encoded, case-insensitive string of a 8-bytes array and is required
271 * to be 16 char long.
272 * Value must have pattern "^projects/[^/]+/traces/[^/]+/spans/[^/]+$".
273 *
274 * Completes with a [Span].
275 *
276 * Completes with a [commons.ApiRequestError] if the API endpoint returned an
277 * error.
278 *
279 * If the used [http.Client] completes with an error when making a REST call,
280 * this method will complete with the same error.
281 */
282 async.Future<Span> create(Span request, core.String name) {
283 var _url = null;
284 var _queryParams = new core.Map();
285 var _uploadMedia = null;
286 var _uploadOptions = null;
287 var _downloadOptions = commons.DownloadOptions.Metadata;
288 var _body = null;
289
290 if (request != null) {
291 _body = convert.JSON.encode((request).toJson());
292 }
293 if (name == null) {
294 throw new core.ArgumentError("Parameter name is required.");
295 }
296
297 _url = 'v2/' + commons.Escaper.ecapeVariableReserved('$name');
298
299 var _response = _requester.request(_url,
300 "PUT",
301 body: _body,
302 queryParams: _queryParams,
303 uploadOptions: _uploadOptions,
304 uploadMedia: _uploadMedia,
305 downloadOptions: _downloadOptions);
306 return _response.then((data) => new Span.fromJson(data));
307 }
308
309 }
310
311
312
313 /**
314 * Text annotation with a set of attributes. A maximum of 32 annotations are
315 * allowed per Span.
316 */
317 class Annotation {
318 /**
319 * A set of attributes on the annotation. A maximum of 4 attributes are
320 * allowed per Annotation.
321 */
322 Attributes attributes;
323 /**
324 * A user-supplied message describing the event. The maximum length for
325 * the description is 256 bytes.
326 */
327 TruncatableString description;
328
329 Annotation();
330
331 Annotation.fromJson(core.Map _json) {
332 if (_json.containsKey("attributes")) {
333 attributes = new Attributes.fromJson(_json["attributes"]);
334 }
335 if (_json.containsKey("description")) {
336 description = new TruncatableString.fromJson(_json["description"]);
337 }
338 }
339
340 core.Map<core.String, core.Object> toJson() {
341 final core.Map<core.String, core.Object> _json = new core.Map<core.String, c ore.Object>();
342 if (attributes != null) {
343 _json["attributes"] = (attributes).toJson();
344 }
345 if (description != null) {
346 _json["description"] = (description).toJson();
347 }
348 return _json;
349 }
350 }
351
352 /** The allowed types for the value side of an attribute key:value pair. */
353 class AttributeValue {
354 /** A boolean value. */
355 core.bool boolValue;
356 /** An integer value. */
357 core.String intValue;
358 /** A string value (up to 256 bytes). */
359 TruncatableString stringValue;
360
361 AttributeValue();
362
363 AttributeValue.fromJson(core.Map _json) {
364 if (_json.containsKey("boolValue")) {
365 boolValue = _json["boolValue"];
366 }
367 if (_json.containsKey("intValue")) {
368 intValue = _json["intValue"];
369 }
370 if (_json.containsKey("stringValue")) {
371 stringValue = new TruncatableString.fromJson(_json["stringValue"]);
372 }
373 }
374
375 core.Map<core.String, core.Object> toJson() {
376 final core.Map<core.String, core.Object> _json = new core.Map<core.String, c ore.Object>();
377 if (boolValue != null) {
378 _json["boolValue"] = boolValue;
379 }
380 if (intValue != null) {
381 _json["intValue"] = intValue;
382 }
383 if (stringValue != null) {
384 _json["stringValue"] = (stringValue).toJson();
385 }
386 return _json;
387 }
388 }
389
390 /** Attributes of a span with a key:value format. */
391 class Attributes {
392 /**
393 * The maximum key length is 128 bytes (attributes are dropped if the
394 * key size is larger than the maximum allowed). The value can be a string
395 * (up to 256 bytes), integer, or boolean (true/false). Some common pair
396 * examples:
397 *
398 * "/instance_id": "my-instance"
399 * "/zone": "us-central1-a"
400 * "/grpc/peer_address": "ip:port" (dns, etc.)
401 * "/grpc/deadline": "Duration"
402 * "/http/user_agent"
403 * "/http/request_bytes": 300
404 * "/http/response_bytes": 1200
405 * "/http/url": google.com/apis
406 * "abc.com/myattribute": true
407 */
408 core.Map<core.String, AttributeValue> attributeMap;
409 /**
410 * The number of dropped attributes after the maximum size was enforced. If
411 * 0 then no attributes were dropped.
412 */
413 core.int droppedAttributesCount;
414
415 Attributes();
416
417 Attributes.fromJson(core.Map _json) {
418 if (_json.containsKey("attributeMap")) {
419 attributeMap = commons.mapMap<core.Map<core.String, core.Object>, Attribut eValue>(_json["attributeMap"], (core.Map<core.String, core.Object> item) => new AttributeValue.fromJson(item));
420 }
421 if (_json.containsKey("droppedAttributesCount")) {
422 droppedAttributesCount = _json["droppedAttributesCount"];
423 }
424 }
425
426 core.Map<core.String, core.Object> toJson() {
427 final core.Map<core.String, core.Object> _json = new core.Map<core.String, c ore.Object>();
428 if (attributeMap != null) {
429 _json["attributeMap"] = commons.mapMap<AttributeValue, core.Map<core.Strin g, core.Object>>(attributeMap, (AttributeValue item) => (item).toJson());
430 }
431 if (droppedAttributesCount != null) {
432 _json["droppedAttributesCount"] = droppedAttributesCount;
433 }
434 return _json;
435 }
436 }
437
438 /** The request message for the `BatchWriteSpans` method. */
439 class BatchWriteSpansRequest {
440 /** A collection of spans. */
441 core.List<Span> spans;
442
443 BatchWriteSpansRequest();
444
445 BatchWriteSpansRequest.fromJson(core.Map _json) {
446 if (_json.containsKey("spans")) {
447 spans = _json["spans"].map((value) => new Span.fromJson(value)).toList();
448 }
449 }
450
451 core.Map<core.String, core.Object> toJson() {
452 final core.Map<core.String, core.Object> _json = new core.Map<core.String, c ore.Object>();
453 if (spans != null) {
454 _json["spans"] = spans.map((value) => (value).toJson()).toList();
455 }
456 return _json;
457 }
458 }
459
460 /**
461 * A generic empty message that you can re-use to avoid defining duplicated
462 * empty messages in your APIs. A typical example is to use it as the request
463 * or the response type of an API method. For instance:
464 *
465 * service Foo {
466 * rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
467 * }
468 *
469 * The JSON representation for `Empty` is empty JSON object `{}`.
470 */
471 class Empty {
472
473 Empty();
474
475 Empty.fromJson(core.Map _json) {
476 }
477
478 core.Map<core.String, core.Object> toJson() {
479 final core.Map<core.String, core.Object> _json = new core.Map<core.String, c ore.Object>();
480 return _json;
481 }
482 }
483
484 /**
485 * A pointer from this span to another span in a different `Trace` within
486 * the same service project or within a different service project. Used
487 * (for example) in batching operations, where a single batch handler
488 * processes multiple requests from different traces or when receives a
489 * request from a different service project.
490 */
491 class Link {
492 /**
493 * `SPAN_ID` is a unique identifier for a span within a trace. It is a
494 * base16-encoded, case-insensitive string of a 8-bytes array and is
495 * required to be 16 char long.
496 */
497 core.String spanId;
498 /**
499 * `TRACE_ID` is a unique identifier for a trace within a project. It is
500 * a base16-encoded, case-insensitive string of a 16-bytes array and is
501 * required to be 32 char long.
502 */
503 core.String traceId;
504 /**
505 * The relationship of the current span relative to the linked span.
506 * Possible string values are:
507 * - "TYPE_UNSPECIFIED" : The relationship of the two spans is unknown.
508 * - "CHILD" : The current span is a child of the linked span.
509 * - "PARENT" : The current span is the parent of the linked span.
510 */
511 core.String type;
512
513 Link();
514
515 Link.fromJson(core.Map _json) {
516 if (_json.containsKey("spanId")) {
517 spanId = _json["spanId"];
518 }
519 if (_json.containsKey("traceId")) {
520 traceId = _json["traceId"];
521 }
522 if (_json.containsKey("type")) {
523 type = _json["type"];
524 }
525 }
526
527 core.Map<core.String, core.Object> toJson() {
528 final core.Map<core.String, core.Object> _json = new core.Map<core.String, c ore.Object>();
529 if (spanId != null) {
530 _json["spanId"] = spanId;
531 }
532 if (traceId != null) {
533 _json["traceId"] = traceId;
534 }
535 if (type != null) {
536 _json["type"] = type;
537 }
538 return _json;
539 }
540 }
541
542 /**
543 * A collection of links, which are references from this span to a span
544 * in the same or different trace.
545 */
546 class Links {
547 /**
548 * The number of dropped links after the maximum size was enforced. If
549 * 0 then no links were dropped.
550 */
551 core.int droppedLinksCount;
552 /** A collection of links. */
553 core.List<Link> link;
554
555 Links();
556
557 Links.fromJson(core.Map _json) {
558 if (_json.containsKey("droppedLinksCount")) {
559 droppedLinksCount = _json["droppedLinksCount"];
560 }
561 if (_json.containsKey("link")) {
562 link = _json["link"].map((value) => new Link.fromJson(value)).toList();
563 }
564 }
565
566 core.Map<core.String, core.Object> toJson() {
567 final core.Map<core.String, core.Object> _json = new core.Map<core.String, c ore.Object>();
568 if (droppedLinksCount != null) {
569 _json["droppedLinksCount"] = droppedLinksCount;
570 }
571 if (link != null) {
572 _json["link"] = link.map((value) => (value).toJson()).toList();
573 }
574 return _json;
575 }
576 }
577
578 /** The response message for the `ListSpans` method. */
579 class ListSpansResponse {
580 /**
581 * If defined, indicates that there are more spans that match the request.
582 * Pass this as the value of `pageToken` in a subsequent request to retrieve
583 * additional spans.
584 */
585 core.String nextPageToken;
586 /** The requested spans if there are any in the specified trace. */
587 core.List<Span> spans;
588
589 ListSpansResponse();
590
591 ListSpansResponse.fromJson(core.Map _json) {
592 if (_json.containsKey("nextPageToken")) {
593 nextPageToken = _json["nextPageToken"];
594 }
595 if (_json.containsKey("spans")) {
596 spans = _json["spans"].map((value) => new Span.fromJson(value)).toList();
597 }
598 }
599
600 core.Map<core.String, core.Object> toJson() {
601 final core.Map<core.String, core.Object> _json = new core.Map<core.String, c ore.Object>();
602 if (nextPageToken != null) {
603 _json["nextPageToken"] = nextPageToken;
604 }
605 if (spans != null) {
606 _json["spans"] = spans.map((value) => (value).toJson()).toList();
607 }
608 return _json;
609 }
610 }
611
612 /** The response message for the `ListTraces` method. */
613 class ListTracesResponse {
614 /**
615 * If defined, indicates that there are more traces that match the request
616 * and that this value should be passed to the next request to continue
617 * retrieving additional traces.
618 */
619 core.String nextPageToken;
620 /** List of trace records returned. */
621 core.List<Trace> traces;
622
623 ListTracesResponse();
624
625 ListTracesResponse.fromJson(core.Map _json) {
626 if (_json.containsKey("nextPageToken")) {
627 nextPageToken = _json["nextPageToken"];
628 }
629 if (_json.containsKey("traces")) {
630 traces = _json["traces"].map((value) => new Trace.fromJson(value)).toList( );
631 }
632 }
633
634 core.Map<core.String, core.Object> toJson() {
635 final core.Map<core.String, core.Object> _json = new core.Map<core.String, c ore.Object>();
636 if (nextPageToken != null) {
637 _json["nextPageToken"] = nextPageToken;
638 }
639 if (traces != null) {
640 _json["traces"] = traces.map((value) => (value).toJson()).toList();
641 }
642 return _json;
643 }
644 }
645
646 /** Binary module. */
647 class Module {
648 /**
649 * Build_id is a unique identifier for the module, usually a hash of its
650 * contents (up to 128 characters).
651 */
652 TruncatableString buildId;
653 /**
654 * E.g. main binary, kernel modules, and dynamic libraries
655 * such as libc.so, sharedlib.so (up to 256 characters).
656 */
657 TruncatableString module;
658
659 Module();
660
661 Module.fromJson(core.Map _json) {
662 if (_json.containsKey("buildId")) {
663 buildId = new TruncatableString.fromJson(_json["buildId"]);
664 }
665 if (_json.containsKey("module")) {
666 module = new TruncatableString.fromJson(_json["module"]);
667 }
668 }
669
670 core.Map<core.String, core.Object> toJson() {
671 final core.Map<core.String, core.Object> _json = new core.Map<core.String, c ore.Object>();
672 if (buildId != null) {
673 _json["buildId"] = (buildId).toJson();
674 }
675 if (module != null) {
676 _json["module"] = (module).toJson();
677 }
678 return _json;
679 }
680 }
681
682 /**
683 * An event describing an RPC message sent/received on the network. A
684 * maximum of 128 network events are allowed per Span.
685 */
686 class NetworkEvent {
687 /** An identifier for the message, which must be unique in this span. */
688 core.String messageId;
689 /** The number of bytes sent or received. */
690 core.String messageSize;
691 /**
692 * If available, this is the kernel time:
693 *
694 * * For sent messages, this is the time at which the first bit was sent.
695 * * For received messages, this is the time at which the last bit was
696 * received.
697 */
698 core.String time;
699 /**
700 * Type of NetworkEvent. Indicates whether the RPC message was sent or
701 * received.
702 * Possible string values are:
703 * - "TYPE_UNSPECIFIED" : Unknown event type.
704 * - "SENT" : Indicates a sent RPC message.
705 * - "RECV" : Indicates a received RPC message.
706 */
707 core.String type;
708
709 NetworkEvent();
710
711 NetworkEvent.fromJson(core.Map _json) {
712 if (_json.containsKey("messageId")) {
713 messageId = _json["messageId"];
714 }
715 if (_json.containsKey("messageSize")) {
716 messageSize = _json["messageSize"];
717 }
718 if (_json.containsKey("time")) {
719 time = _json["time"];
720 }
721 if (_json.containsKey("type")) {
722 type = _json["type"];
723 }
724 }
725
726 core.Map<core.String, core.Object> toJson() {
727 final core.Map<core.String, core.Object> _json = new core.Map<core.String, c ore.Object>();
728 if (messageId != null) {
729 _json["messageId"] = messageId;
730 }
731 if (messageSize != null) {
732 _json["messageSize"] = messageSize;
733 }
734 if (time != null) {
735 _json["time"] = time;
736 }
737 if (type != null) {
738 _json["type"] = type;
739 }
740 return _json;
741 }
742 }
743
744 /**
745 * A span represents a single operation within a trace. Spans can be nested
746 * to form a trace tree. Often, a trace contains a root span that
747 * describes the end-to-end latency and, optionally, one or more subspans for
748 * its sub-operations. (A trace could alternatively contain multiple root spans,
749 * or none at all.) Spans do not need to be contiguous. There may be gaps
750 * and/or overlaps between spans in a trace.
751 */
752 class Span {
753 /**
754 * A set of attributes on the span. A maximum of 32 attributes are allowed per
755 * Span.
756 */
757 Attributes attributes;
758 /**
759 * Description of the operation in the span. It is sanitized and displayed in
760 * the Stackdriver Trace tool in the
761 * {% dynamic print site_values.console_name %}.
762 * The display_name may be a method name or some other per-call site
763 * name. For the same executable and the same call point, a best practice is
764 * to use a consistent operation name, which makes it easier to correlate
765 * cross-trace spans.
766 * The maximum length for the display_name is 128 bytes.
767 */
768 TruncatableString displayName;
769 /**
770 * End time of the span.
771 * On the client side, this is the local machine clock time at which the span
772 * execution was ended; on the server
773 * side, this is the time at which the server application handler stopped
774 * running.
775 */
776 core.String endTime;
777 /** A maximum of 128 links are allowed per Span. */
778 Links links;
779 /**
780 * The resource name of Span in the format
781 * `projects/PROJECT_ID/traces/TRACE_ID/spans/SPAN_ID`.
782 * `TRACE_ID` is a unique identifier for a trace within a project and is a
783 * base16-encoded, case-insensitive string and is required to be 32 char long.
784 * `SPAN_ID` is a unique identifier for a span within a trace. It is a
785 * base 16-encoded, case-insensitive string of a 8-bytes array and is required
786 * to be 16 char long.
787 */
788 core.String name;
789 /**
790 * ID of parent span which is a base 16-encoded, case-insensitive string of
791 * a 8-bytes array and is required to be 16 char long. If this is a root span,
792 * the value must be empty.
793 */
794 core.String parentSpanId;
795 /**
796 * Unique identifier for a span within a trace. It is a base 16-encoded,
797 * case-insensitive string of a 8-bytes array and is required.
798 */
799 core.String spanId;
800 /** Stack trace captured at the start of the span. */
801 StackTrace stackTrace;
802 /**
803 * Start time of the span.
804 * On the client side, this is the local machine clock time at which the span
805 * execution was started; on the server
806 * side, this is the time at which the server application handler started
807 * running.
808 */
809 core.String startTime;
810 /** An optional final status for this span. */
811 Status status;
812 /**
813 * A maximum of 32 annotations and 128 network events are allowed per Span.
814 */
815 TimeEvents timeEvents;
816
817 Span();
818
819 Span.fromJson(core.Map _json) {
820 if (_json.containsKey("attributes")) {
821 attributes = new Attributes.fromJson(_json["attributes"]);
822 }
823 if (_json.containsKey("displayName")) {
824 displayName = new TruncatableString.fromJson(_json["displayName"]);
825 }
826 if (_json.containsKey("endTime")) {
827 endTime = _json["endTime"];
828 }
829 if (_json.containsKey("links")) {
830 links = new Links.fromJson(_json["links"]);
831 }
832 if (_json.containsKey("name")) {
833 name = _json["name"];
834 }
835 if (_json.containsKey("parentSpanId")) {
836 parentSpanId = _json["parentSpanId"];
837 }
838 if (_json.containsKey("spanId")) {
839 spanId = _json["spanId"];
840 }
841 if (_json.containsKey("stackTrace")) {
842 stackTrace = new StackTrace.fromJson(_json["stackTrace"]);
843 }
844 if (_json.containsKey("startTime")) {
845 startTime = _json["startTime"];
846 }
847 if (_json.containsKey("status")) {
848 status = new Status.fromJson(_json["status"]);
849 }
850 if (_json.containsKey("timeEvents")) {
851 timeEvents = new TimeEvents.fromJson(_json["timeEvents"]);
852 }
853 }
854
855 core.Map<core.String, core.Object> toJson() {
856 final core.Map<core.String, core.Object> _json = new core.Map<core.String, c ore.Object>();
857 if (attributes != null) {
858 _json["attributes"] = (attributes).toJson();
859 }
860 if (displayName != null) {
861 _json["displayName"] = (displayName).toJson();
862 }
863 if (endTime != null) {
864 _json["endTime"] = endTime;
865 }
866 if (links != null) {
867 _json["links"] = (links).toJson();
868 }
869 if (name != null) {
870 _json["name"] = name;
871 }
872 if (parentSpanId != null) {
873 _json["parentSpanId"] = parentSpanId;
874 }
875 if (spanId != null) {
876 _json["spanId"] = spanId;
877 }
878 if (stackTrace != null) {
879 _json["stackTrace"] = (stackTrace).toJson();
880 }
881 if (startTime != null) {
882 _json["startTime"] = startTime;
883 }
884 if (status != null) {
885 _json["status"] = (status).toJson();
886 }
887 if (timeEvents != null) {
888 _json["timeEvents"] = (timeEvents).toJson();
889 }
890 return _json;
891 }
892 }
893
894 /** Represents a single stack frame in a stack trace. */
895 class StackFrame {
896 /**
897 * Column number is important in JavaScript (anonymous functions).
898 * May not be available in some languages.
899 */
900 core.String columnNumber;
901 /** The filename of the file containing this frame (up to 256 characters). */
902 TruncatableString fileName;
903 /**
904 * The fully-qualified name that uniquely identifies this function or
905 * method (up to 1024 characters).
906 */
907 TruncatableString functionName;
908 /** Line number of the frame. */
909 core.String lineNumber;
910 /** Binary module the code is loaded from. */
911 Module loadModule;
912 /**
913 * Used when the function name is
914 * [mangled](http://www.avabodh.com/cxxin/namemangling.html). May be
915 * fully-qualified (up to 1024 characters).
916 */
917 TruncatableString originalFunctionName;
918 /** The version of the deployed source code (up to 128 characters). */
919 TruncatableString sourceVersion;
920
921 StackFrame();
922
923 StackFrame.fromJson(core.Map _json) {
924 if (_json.containsKey("columnNumber")) {
925 columnNumber = _json["columnNumber"];
926 }
927 if (_json.containsKey("fileName")) {
928 fileName = new TruncatableString.fromJson(_json["fileName"]);
929 }
930 if (_json.containsKey("functionName")) {
931 functionName = new TruncatableString.fromJson(_json["functionName"]);
932 }
933 if (_json.containsKey("lineNumber")) {
934 lineNumber = _json["lineNumber"];
935 }
936 if (_json.containsKey("loadModule")) {
937 loadModule = new Module.fromJson(_json["loadModule"]);
938 }
939 if (_json.containsKey("originalFunctionName")) {
940 originalFunctionName = new TruncatableString.fromJson(_json["originalFunct ionName"]);
941 }
942 if (_json.containsKey("sourceVersion")) {
943 sourceVersion = new TruncatableString.fromJson(_json["sourceVersion"]);
944 }
945 }
946
947 core.Map<core.String, core.Object> toJson() {
948 final core.Map<core.String, core.Object> _json = new core.Map<core.String, c ore.Object>();
949 if (columnNumber != null) {
950 _json["columnNumber"] = columnNumber;
951 }
952 if (fileName != null) {
953 _json["fileName"] = (fileName).toJson();
954 }
955 if (functionName != null) {
956 _json["functionName"] = (functionName).toJson();
957 }
958 if (lineNumber != null) {
959 _json["lineNumber"] = lineNumber;
960 }
961 if (loadModule != null) {
962 _json["loadModule"] = (loadModule).toJson();
963 }
964 if (originalFunctionName != null) {
965 _json["originalFunctionName"] = (originalFunctionName).toJson();
966 }
967 if (sourceVersion != null) {
968 _json["sourceVersion"] = (sourceVersion).toJson();
969 }
970 return _json;
971 }
972 }
973
974 /** Represents collection of StackFrames that can be truncated. */
975 class StackFrames {
976 /**
977 * The number of dropped stack frames after the maximum size was enforced.
978 * If 0 then no frames were dropped.
979 */
980 core.int droppedFramesCount;
981 /** Stack frames in this stack trace. */
982 core.List<StackFrame> frame;
983
984 StackFrames();
985
986 StackFrames.fromJson(core.Map _json) {
987 if (_json.containsKey("droppedFramesCount")) {
988 droppedFramesCount = _json["droppedFramesCount"];
989 }
990 if (_json.containsKey("frame")) {
991 frame = _json["frame"].map((value) => new StackFrame.fromJson(value)).toLi st();
992 }
993 }
994
995 core.Map<core.String, core.Object> toJson() {
996 final core.Map<core.String, core.Object> _json = new core.Map<core.String, c ore.Object>();
997 if (droppedFramesCount != null) {
998 _json["droppedFramesCount"] = droppedFramesCount;
999 }
1000 if (frame != null) {
1001 _json["frame"] = frame.map((value) => (value).toJson()).toList();
1002 }
1003 return _json;
1004 }
1005 }
1006
1007 /** StackTrace collected in a trace. */
1008 class StackTrace {
1009 /** Stack frames in this stack trace. A maximum of 128 frames are allowed. */
1010 StackFrames stackFrames;
1011 /**
1012 * The hash ID is used to conserve network bandwidth for duplicate
1013 * stack traces within a single trace.
1014 *
1015 * Often multiple spans will have identical stack traces.
1016 * The first occurrence of a stack trace should contain both the
1017 * `stackFrame` content and a value in `stackTraceHashId`.
1018 *
1019 * Subsequent spans within the same request can refer
1020 * to that stack trace by only setting `stackTraceHashId`.
1021 */
1022 core.String stackTraceHashId;
1023
1024 StackTrace();
1025
1026 StackTrace.fromJson(core.Map _json) {
1027 if (_json.containsKey("stackFrames")) {
1028 stackFrames = new StackFrames.fromJson(_json["stackFrames"]);
1029 }
1030 if (_json.containsKey("stackTraceHashId")) {
1031 stackTraceHashId = _json["stackTraceHashId"];
1032 }
1033 }
1034
1035 core.Map<core.String, core.Object> toJson() {
1036 final core.Map<core.String, core.Object> _json = new core.Map<core.String, c ore.Object>();
1037 if (stackFrames != null) {
1038 _json["stackFrames"] = (stackFrames).toJson();
1039 }
1040 if (stackTraceHashId != null) {
1041 _json["stackTraceHashId"] = stackTraceHashId;
1042 }
1043 return _json;
1044 }
1045 }
1046
1047 /**
1048 * The `Status` type defines a logical error model that is suitable for
1049 * different
1050 * programming environments, including REST APIs and RPC APIs. It is used by
1051 * [gRPC](https://github.com/grpc). The error model is designed to be:
1052 *
1053 * - Simple to use and understand for most users
1054 * - Flexible enough to meet unexpected needs
1055 *
1056 * # Overview
1057 *
1058 * The `Status` message contains three pieces of data: error code, error
1059 * message,
1060 * and error details. The error code should be an enum value of
1061 * google.rpc.Code, but it may accept additional error codes if needed. The
1062 * error message should be a developer-facing English message that helps
1063 * developers *understand* and *resolve* the error. If a localized user-facing
1064 * error message is needed, put the localized message in the error details or
1065 * localize it in the client. The optional error details may contain arbitrary
1066 * information about the error. There is a predefined set of error detail types
1067 * in the package `google.rpc` that can be used for common error conditions.
1068 *
1069 * # Language mapping
1070 *
1071 * The `Status` message is the logical representation of the error model, but it
1072 * is not necessarily the actual wire format. When the `Status` message is
1073 * exposed in different client libraries and different wire protocols, it can be
1074 * mapped differently. For example, it will likely be mapped to some exceptions
1075 * in Java, but more likely mapped to some error codes in C.
1076 *
1077 * # Other uses
1078 *
1079 * The error model and the `Status` message can be used in a variety of
1080 * environments, either with or without APIs, to provide a
1081 * consistent developer experience across different environments.
1082 *
1083 * Example uses of this error model include:
1084 *
1085 * - Partial errors. If a service needs to return partial errors to the client,
1086 * it may embed the `Status` in the normal response to indicate the partial
1087 * errors.
1088 *
1089 * - Workflow errors. A typical workflow has multiple steps. Each step may
1090 * have a `Status` message for error reporting.
1091 *
1092 * - Batch operations. If a client uses batch request and batch response, the
1093 * `Status` message should be used directly inside batch response, one for
1094 * each error sub-response.
1095 *
1096 * - Asynchronous operations. If an API call embeds asynchronous operation
1097 * results in its response, the status of those operations should be
1098 * represented directly using the `Status` message.
1099 *
1100 * - Logging. If some API errors are stored in logs, the message `Status` could
1101 * be used directly after any stripping needed for security/privacy reasons.
1102 */
1103 class Status {
1104 /** The status code, which should be an enum value of google.rpc.Code. */
1105 core.int code;
1106 /**
1107 * A list of messages that carry the error details. There will be a
1108 * common set of message types for APIs to use.
1109 *
1110 * The values for Object must be JSON objects. It can consist of `num`,
1111 * `String`, `bool` and `null` as well as `Map` and `List` values.
1112 */
1113 core.List<core.Map<core.String, core.Object>> details;
1114 /**
1115 * A developer-facing error message, which should be in English. Any
1116 * user-facing error message should be localized and sent in the
1117 * google.rpc.Status.details field, or localized by the client.
1118 */
1119 core.String message;
1120
1121 Status();
1122
1123 Status.fromJson(core.Map _json) {
1124 if (_json.containsKey("code")) {
1125 code = _json["code"];
1126 }
1127 if (_json.containsKey("details")) {
1128 details = _json["details"];
1129 }
1130 if (_json.containsKey("message")) {
1131 message = _json["message"];
1132 }
1133 }
1134
1135 core.Map<core.String, core.Object> toJson() {
1136 final core.Map<core.String, core.Object> _json = new core.Map<core.String, c ore.Object>();
1137 if (code != null) {
1138 _json["code"] = code;
1139 }
1140 if (details != null) {
1141 _json["details"] = details;
1142 }
1143 if (message != null) {
1144 _json["message"] = message;
1145 }
1146 return _json;
1147 }
1148 }
1149
1150 /** A time-stamped annotation in the Span. */
1151 class TimeEvent {
1152 /** One or more key:value pairs. */
1153 Annotation annotation;
1154 /** An event describing an RPC message sent/received on the network. */
1155 NetworkEvent networkEvent;
1156 /** The timestamp indicating the time the event occurred. */
1157 core.String time;
1158
1159 TimeEvent();
1160
1161 TimeEvent.fromJson(core.Map _json) {
1162 if (_json.containsKey("annotation")) {
1163 annotation = new Annotation.fromJson(_json["annotation"]);
1164 }
1165 if (_json.containsKey("networkEvent")) {
1166 networkEvent = new NetworkEvent.fromJson(_json["networkEvent"]);
1167 }
1168 if (_json.containsKey("time")) {
1169 time = _json["time"];
1170 }
1171 }
1172
1173 core.Map<core.String, core.Object> toJson() {
1174 final core.Map<core.String, core.Object> _json = new core.Map<core.String, c ore.Object>();
1175 if (annotation != null) {
1176 _json["annotation"] = (annotation).toJson();
1177 }
1178 if (networkEvent != null) {
1179 _json["networkEvent"] = (networkEvent).toJson();
1180 }
1181 if (time != null) {
1182 _json["time"] = time;
1183 }
1184 return _json;
1185 }
1186 }
1187
1188 /**
1189 * A collection of `TimeEvent`s. A `TimeEvent` is a time-stamped annotation
1190 * on the span, consisting of either user-supplied key:value pairs, or
1191 * details of an RPC message sent/received on the network.
1192 */
1193 class TimeEvents {
1194 /**
1195 * The number of dropped annotations after the maximum size was enforced. If
1196 * 0 then no annotations were dropped.
1197 */
1198 core.int droppedAnnotationsCount;
1199 /**
1200 * The number of dropped network events after the maximum size was enforced.
1201 * If 0 then no annotations were dropped.
1202 */
1203 core.int droppedNetworkEventsCount;
1204 /** A collection of `TimeEvent`s. */
1205 core.List<TimeEvent> timeEvent;
1206
1207 TimeEvents();
1208
1209 TimeEvents.fromJson(core.Map _json) {
1210 if (_json.containsKey("droppedAnnotationsCount")) {
1211 droppedAnnotationsCount = _json["droppedAnnotationsCount"];
1212 }
1213 if (_json.containsKey("droppedNetworkEventsCount")) {
1214 droppedNetworkEventsCount = _json["droppedNetworkEventsCount"];
1215 }
1216 if (_json.containsKey("timeEvent")) {
1217 timeEvent = _json["timeEvent"].map((value) => new TimeEvent.fromJson(value )).toList();
1218 }
1219 }
1220
1221 core.Map<core.String, core.Object> toJson() {
1222 final core.Map<core.String, core.Object> _json = new core.Map<core.String, c ore.Object>();
1223 if (droppedAnnotationsCount != null) {
1224 _json["droppedAnnotationsCount"] = droppedAnnotationsCount;
1225 }
1226 if (droppedNetworkEventsCount != null) {
1227 _json["droppedNetworkEventsCount"] = droppedNetworkEventsCount;
1228 }
1229 if (timeEvent != null) {
1230 _json["timeEvent"] = timeEvent.map((value) => (value).toJson()).toList();
1231 }
1232 return _json;
1233 }
1234 }
1235
1236 /**
1237 * A trace describes how long it takes for an application to perform some
1238 * operations. It consists of a set of spans, each representing
1239 * an operation and including time information and operation details.
1240 */
1241 class Trace {
1242 /**
1243 * The resource name of Trace in the format
1244 * `projects/PROJECT_ID/traces/TRACE_ID`. `TRACE_ID` is a unique identifier
1245 * for a trace within a project and is a base16-encoded, case-insensitive
1246 * string and is required to be 32 char long.
1247 */
1248 core.String name;
1249
1250 Trace();
1251
1252 Trace.fromJson(core.Map _json) {
1253 if (_json.containsKey("name")) {
1254 name = _json["name"];
1255 }
1256 }
1257
1258 core.Map<core.String, core.Object> toJson() {
1259 final core.Map<core.String, core.Object> _json = new core.Map<core.String, c ore.Object>();
1260 if (name != null) {
1261 _json["name"] = name;
1262 }
1263 return _json;
1264 }
1265 }
1266
1267 /** Represents a string value that might be truncated. */
1268 class TruncatableString {
1269 /**
1270 * The number of characters truncated from the original string value. If 0 it
1271 * means that the string value was not truncated.
1272 */
1273 core.int truncatedCharacterCount;
1274 /**
1275 * The truncated string value. E.g. for a string attribute this may have up to
1276 * 256 bytes.
1277 */
1278 core.String value;
1279
1280 TruncatableString();
1281
1282 TruncatableString.fromJson(core.Map _json) {
1283 if (_json.containsKey("truncatedCharacterCount")) {
1284 truncatedCharacterCount = _json["truncatedCharacterCount"];
1285 }
1286 if (_json.containsKey("value")) {
1287 value = _json["value"];
1288 }
1289 }
1290
1291 core.Map<core.String, core.Object> toJson() {
1292 final core.Map<core.String, core.Object> _json = new core.Map<core.String, c ore.Object>();
1293 if (truncatedCharacterCount != null) {
1294 _json["truncatedCharacterCount"] = truncatedCharacterCount;
1295 }
1296 if (value != null) {
1297 _json["value"] = value;
1298 }
1299 return _json;
1300 }
1301 }
OLDNEW
« no previous file with comments | « generated/googleapis/lib/streetviewpublish/v1.dart ('k') | generated/googleapis/lib/translate/v2.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698