google-cloud-trace 0.39.0 → 0.40.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (35) hide show
  1. checksums.yaml +4 -4
  2. data/AUTHENTICATION.md +1 -1
  3. data/CHANGELOG.md +24 -0
  4. data/lib/google-cloud-trace.rb +20 -12
  5. data/lib/google/cloud/trace.rb +18 -14
  6. data/lib/google/cloud/trace/credentials.rb +2 -2
  7. data/lib/google/cloud/trace/result_set.rb +20 -12
  8. data/lib/google/cloud/trace/service.rb +34 -60
  9. data/lib/google/cloud/trace/span.rb +3 -3
  10. data/lib/google/cloud/trace/trace_record.rb +3 -3
  11. data/lib/google/cloud/trace/version.rb +1 -1
  12. metadata +15 -64
  13. data/lib/google/cloud/trace/v1.rb +0 -16
  14. data/lib/google/cloud/trace/v1/credentials.rb +0 -39
  15. data/lib/google/cloud/trace/v1/doc/google/devtools/cloudtrace/v1/trace.rb +0 -253
  16. data/lib/google/cloud/trace/v1/doc/google/protobuf/empty.rb +0 -29
  17. data/lib/google/cloud/trace/v1/doc/google/protobuf/timestamp.rb +0 -113
  18. data/lib/google/cloud/trace/v1/trace_service_client.rb +0 -425
  19. data/lib/google/cloud/trace/v1/trace_service_client_config.json +0 -41
  20. data/lib/google/cloud/trace/v2.rb +0 -123
  21. data/lib/google/cloud/trace/v2/credentials.rb +0 -39
  22. data/lib/google/cloud/trace/v2/doc/google/devtools/cloudtrace/v2/trace.rb +0 -356
  23. data/lib/google/cloud/trace/v2/doc/google/devtools/cloudtrace/v2/tracing.rb +0 -33
  24. data/lib/google/cloud/trace/v2/doc/google/protobuf/any.rb +0 -131
  25. data/lib/google/cloud/trace/v2/doc/google/protobuf/empty.rb +0 -29
  26. data/lib/google/cloud/trace/v2/doc/google/protobuf/timestamp.rb +0 -113
  27. data/lib/google/cloud/trace/v2/doc/google/protobuf/wrappers.rb +0 -34
  28. data/lib/google/cloud/trace/v2/doc/google/rpc/status.rb +0 -39
  29. data/lib/google/cloud/trace/v2/trace_service_client.rb +0 -418
  30. data/lib/google/cloud/trace/v2/trace_service_client_config.json +0 -36
  31. data/lib/google/devtools/cloudtrace/v1/trace_pb.rb +0 -82
  32. data/lib/google/devtools/cloudtrace/v1/trace_services_pb.rb +0 -58
  33. data/lib/google/devtools/cloudtrace/v2/trace_pb.rb +0 -142
  34. data/lib/google/devtools/cloudtrace/v2/tracing_pb.rb +0 -29
  35. data/lib/google/devtools/cloudtrace/v2/tracing_services_pb.rb +0 -53
@@ -1,41 +0,0 @@
1
- {
2
- "interfaces": {
3
- "google.devtools.cloudtrace.v1.TraceService": {
4
- "retry_codes": {
5
- "idempotent": [
6
- "DEADLINE_EXCEEDED",
7
- "UNAVAILABLE"
8
- ],
9
- "non_idempotent": []
10
- },
11
- "retry_params": {
12
- "default": {
13
- "initial_retry_delay_millis": 100,
14
- "retry_delay_multiplier": 1.2,
15
- "max_retry_delay_millis": 1000,
16
- "initial_rpc_timeout_millis": 20000,
17
- "rpc_timeout_multiplier": 1.5,
18
- "max_rpc_timeout_millis": 30000,
19
- "total_timeout_millis": 45000
20
- }
21
- },
22
- "methods": {
23
- "PatchTraces": {
24
- "timeout_millis": 60000,
25
- "retry_codes_name": "idempotent",
26
- "retry_params_name": "default"
27
- },
28
- "ListTraces": {
29
- "timeout_millis": 60000,
30
- "retry_codes_name": "idempotent",
31
- "retry_params_name": "default"
32
- },
33
- "GetTrace": {
34
- "timeout_millis": 60000,
35
- "retry_codes_name": "idempotent",
36
- "retry_params_name": "default"
37
- }
38
- }
39
- }
40
- }
41
- }
@@ -1,123 +0,0 @@
1
- # Copyright 2017 Google LLC
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
- # https://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
-
16
- require "google/cloud/trace/v2/trace_service_client"
17
-
18
- module Google
19
- module Cloud
20
- # rubocop:disable LineLength
21
-
22
- ##
23
- # # Ruby Client for Stackdriver Trace API
24
- #
25
- # [Stackdriver Trace API][Product Documentation]:
26
- # Sends application trace data to Stackdriver Trace for viewing. Trace data is
27
- # collected for all App Engine applications by default. Trace data from other
28
- # applications can be provided using this API.
29
- # - [Product Documentation][]
30
- #
31
- # ## Quick Start
32
- # In order to use this library, you first need to go through the following
33
- # steps:
34
- #
35
- # 1. [Select or create a Cloud Platform project.](https://console.cloud.google.com/project)
36
- # 2. [Enable billing for your project.](https://cloud.google.com/billing/docs/how-to/modify-project#enable_billing_for_a_project)
37
- # 3. [Enable the Stackdriver Trace API.](https://console.cloud.google.com/apis/api/trace)
38
- # 4. [Setup Authentication.](https://googleapis.dev/ruby/google-cloud-trace/latest/file.AUTHENTICATION.html)
39
- #
40
- # ### Preview
41
- # #### TraceServiceClient
42
- # ```rb
43
- # require "google/cloud/trace/v2"
44
- #
45
- # trace_service_client = Google::Cloud::Trace::V2.new
46
- # formatted_name = Google::Cloud::Trace::V2::TraceServiceClient.project_path(project_id)
47
- # spans = []
48
- # trace_service_client.batch_write_spans(formatted_name, spans)
49
- # ```
50
- #
51
- # ### Next Steps
52
- # - Read the [Stackdriver Trace API Product documentation][Product Documentation]
53
- # to learn more about the product and see How-to Guides.
54
- # - View this [repository's main README](https://github.com/googleapis/google-cloud-ruby/blob/master/README.md)
55
- # to see the full list of Cloud APIs that we cover.
56
- #
57
- # [Product Documentation]: https://cloud.google.com/trace
58
- #
59
- #
60
- module Trace
61
- module V2
62
- # rubocop:enable LineLength
63
-
64
- ##
65
- # This file describes an API for collecting and viewing traces and spans
66
- # within a trace. A Trace is a collection of spans corresponding to a single
67
- # operation or set of operations for an application. A span is an individual
68
- # timed event which forms a node of the trace tree. A single trace may
69
- # contain span(s) from multiple services.
70
- #
71
- # @param credentials [Google::Auth::Credentials, String, Hash, GRPC::Core::Channel, GRPC::Core::ChannelCredentials, Proc]
72
- # Provides the means for authenticating requests made by the client. This parameter can
73
- # be many types.
74
- # A `Google::Auth::Credentials` uses a the properties of its represented keyfile for
75
- # authenticating requests made by this client.
76
- # A `String` will be treated as the path to the keyfile to be used for the construction of
77
- # credentials for this client.
78
- # A `Hash` will be treated as the contents of a keyfile to be used for the construction of
79
- # credentials for this client.
80
- # A `GRPC::Core::Channel` will be used to make calls through.
81
- # A `GRPC::Core::ChannelCredentials` for the setting up the RPC client. The channel credentials
82
- # should already be composed with a `GRPC::Core::CallCredentials` object.
83
- # A `Proc` will be used as an updater_proc for the Grpc channel. The proc transforms the
84
- # metadata for requests, generally, to give OAuth credentials.
85
- # @param scopes [Array<String>]
86
- # The OAuth scopes for this service. This parameter is ignored if
87
- # an updater_proc is supplied.
88
- # @param client_config [Hash]
89
- # A Hash for call options for each method. See
90
- # Google::Gax#construct_settings for the structure of
91
- # this data. Falls back to the default config if not specified
92
- # or the specified config is missing data points.
93
- # @param timeout [Numeric]
94
- # The default timeout, in seconds, for calls made through this client.
95
- # @param service_address [String]
96
- # Override for the service hostname, or `nil` to leave as the default.
97
- # @param service_port [Integer]
98
- # Override for the service port, or `nil` to leave as the default.
99
- def self.new \
100
- credentials: nil,
101
- scopes: nil,
102
- client_config: nil,
103
- timeout: nil,
104
- lib_name: nil,
105
- lib_version: nil,
106
- service_address: nil,
107
- service_port: nil
108
- kwargs = {
109
- credentials: credentials,
110
- scopes: scopes,
111
- client_config: client_config,
112
- timeout: timeout,
113
- lib_name: lib_name,
114
- service_address: service_address,
115
- service_port: service_port,
116
- lib_version: lib_version
117
- }.select { |_, v| v != nil }
118
- Google::Cloud::Trace::V2::TraceServiceClient.new(**kwargs)
119
- end
120
- end
121
- end
122
- end
123
- end
@@ -1,39 +0,0 @@
1
- # Copyright 2020 Google LLC
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
- # https://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
-
16
- require "googleauth"
17
-
18
- module Google
19
- module Cloud
20
- module Trace
21
- module V2
22
- class Credentials < Google::Auth::Credentials
23
- SCOPE = ["https://www.googleapis.com/auth/cloud-platform"].freeze
24
- PATH_ENV_VARS = %w(TRACE_CREDENTIALS
25
- TRACE_KEYFILE
26
- GOOGLE_CLOUD_CREDENTIALS
27
- GOOGLE_CLOUD_KEYFILE
28
- GCLOUD_KEYFILE)
29
- JSON_ENV_VARS = %w(TRACE_CREDENTIALS_JSON
30
- TRACE_KEYFILE_JSON
31
- GOOGLE_CLOUD_CREDENTIALS_JSON
32
- GOOGLE_CLOUD_KEYFILE_JSON
33
- GCLOUD_KEYFILE_JSON)
34
- DEFAULT_PATHS = ["~/.config/gcloud/application_default_credentials.json"]
35
- end
36
- end
37
- end
38
- end
39
- end
@@ -1,356 +0,0 @@
1
- # Copyright 2020 Google LLC
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
- # https://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
-
16
- module Google
17
- module Devtools
18
- module Cloudtrace
19
- module V2
20
- # A span represents a single operation within a trace. Spans can be
21
- # nested to form a trace tree. Often, a trace contains a root span
22
- # that describes the end-to-end latency, and one or more subspans for
23
- # its sub-operations. A trace can also contain multiple root spans,
24
- # or none at all. Spans do not need to be contiguous&mdash;there may be
25
- # gaps or overlaps between spans in a trace.
26
- # @!attribute [rw] name
27
- # @return [String]
28
- # Required. The resource name of the span in the following format:
29
- #
30
- # projects/[PROJECT_ID]/traces/[TRACE_ID]/spans/[SPAN_ID]
31
- #
32
- # [TRACE_ID] is a unique identifier for a trace within a project;
33
- # it is a 32-character hexadecimal encoding of a 16-byte array.
34
- #
35
- # [SPAN_ID] is a unique identifier for a span within a trace; it
36
- # is a 16-character hexadecimal encoding of an 8-byte array.
37
- # @!attribute [rw] span_id
38
- # @return [String]
39
- # Required. The [SPAN_ID] portion of the span's resource name.
40
- # @!attribute [rw] parent_span_id
41
- # @return [String]
42
- # The [SPAN_ID] of this span's parent span. If this is a root span,
43
- # then this field must be empty.
44
- # @!attribute [rw] display_name
45
- # @return [Google::Devtools::Cloudtrace::V2::TruncatableString]
46
- # Required. A description of the span's operation (up to 128 bytes).
47
- # Stackdriver Trace displays the description in the
48
- # Google Cloud Platform Console.
49
- # For example, the display name can be a qualified method name or a file name
50
- # and a line number where the operation is called. A best practice is to use
51
- # the same display name within an application and at the same call point.
52
- # This makes it easier to correlate spans in different traces.
53
- # @!attribute [rw] start_time
54
- # @return [Google::Protobuf::Timestamp]
55
- # Required. The start time of the span. On the client side, this is the time kept by
56
- # the local machine where the span execution starts. On the server side, this
57
- # is the time when the server's application handler starts running.
58
- # @!attribute [rw] end_time
59
- # @return [Google::Protobuf::Timestamp]
60
- # Required. The end time of the span. On the client side, this is the time kept by
61
- # the local machine where the span execution ends. On the server side, this
62
- # is the time when the server application handler stops running.
63
- # @!attribute [rw] attributes
64
- # @return [Google::Devtools::Cloudtrace::V2::Span::Attributes]
65
- # A set of attributes on the span. You can have up to 32 attributes per
66
- # span.
67
- # @!attribute [rw] stack_trace
68
- # @return [Google::Devtools::Cloudtrace::V2::StackTrace]
69
- # Stack trace captured at the start of the span.
70
- # @!attribute [rw] time_events
71
- # @return [Google::Devtools::Cloudtrace::V2::Span::TimeEvents]
72
- # A set of time events. You can have up to 32 annotations and 128 message
73
- # events per span.
74
- # @!attribute [rw] links
75
- # @return [Google::Devtools::Cloudtrace::V2::Span::Links]
76
- # Links associated with the span. You can have up to 128 links per Span.
77
- # @!attribute [rw] status
78
- # @return [Google::Rpc::Status]
79
- # Optional. The final status for this span.
80
- # @!attribute [rw] same_process_as_parent_span
81
- # @return [Google::Protobuf::BoolValue]
82
- # Optional. Set this parameter to indicate whether this span is in
83
- # the same process as its parent. If you do not set this parameter,
84
- # Stackdriver Trace is unable to take advantage of this helpful
85
- # information.
86
- # @!attribute [rw] child_span_count
87
- # @return [Google::Protobuf::Int32Value]
88
- # Optional. The number of child spans that were generated while this span
89
- # was active. If set, allows implementation to detect missing child spans.
90
- # @!attribute [rw] span_kind
91
- # @return [Google::Devtools::Cloudtrace::V2::Span::SpanKind]
92
- # Optional. Distinguishes between spans generated in a particular context. For example,
93
- # two spans with the same name may be distinguished using `CLIENT` (caller)
94
- # and `SERVER` (callee) to identify an RPC call.
95
- class Span
96
- # A set of attributes, each in the format `[KEY]:[VALUE]`.
97
- # @!attribute [rw] attribute_map
98
- # @return [Hash{String => Google::Devtools::Cloudtrace::V2::AttributeValue}]
99
- # The set of attributes. Each attribute's key can be up to 128 bytes
100
- # long. The value can be a string up to 256 bytes, a signed 64-bit integer,
101
- # or the Boolean values `true` and `false`. For example:
102
- #
103
- # "/instance_id": { "string_value": { "value": "my-instance" } }
104
- # "/http/request_bytes": { "int_value": 300 }
105
- # "abc.com/myattribute": { "bool_value": false }
106
- # @!attribute [rw] dropped_attributes_count
107
- # @return [Integer]
108
- # The number of attributes that were discarded. Attributes can be discarded
109
- # because their keys are too long or because there are too many attributes.
110
- # If this value is 0 then all attributes are valid.
111
- class Attributes; end
112
-
113
- # A time-stamped annotation or message event in the Span.
114
- # @!attribute [rw] time
115
- # @return [Google::Protobuf::Timestamp]
116
- # The timestamp indicating the time the event occurred.
117
- # @!attribute [rw] annotation
118
- # @return [Google::Devtools::Cloudtrace::V2::Span::TimeEvent::Annotation]
119
- # Text annotation with a set of attributes.
120
- # @!attribute [rw] message_event
121
- # @return [Google::Devtools::Cloudtrace::V2::Span::TimeEvent::MessageEvent]
122
- # An event describing a message sent/received between Spans.
123
- class TimeEvent
124
- # Text annotation with a set of attributes.
125
- # @!attribute [rw] description
126
- # @return [Google::Devtools::Cloudtrace::V2::TruncatableString]
127
- # A user-supplied message describing the event. The maximum length for
128
- # the description is 256 bytes.
129
- # @!attribute [rw] attributes
130
- # @return [Google::Devtools::Cloudtrace::V2::Span::Attributes]
131
- # A set of attributes on the annotation. You can have up to 4 attributes
132
- # per Annotation.
133
- class Annotation; end
134
-
135
- # An event describing a message sent/received between Spans.
136
- # @!attribute [rw] type
137
- # @return [Google::Devtools::Cloudtrace::V2::Span::TimeEvent::MessageEvent::Type]
138
- # Type of MessageEvent. Indicates whether the message was sent or
139
- # received.
140
- # @!attribute [rw] id
141
- # @return [Integer]
142
- # An identifier for the MessageEvent's message that can be used to match
143
- # SENT and RECEIVED MessageEvents. It is recommended to be unique within
144
- # a Span.
145
- # @!attribute [rw] uncompressed_size_bytes
146
- # @return [Integer]
147
- # The number of uncompressed bytes sent or received.
148
- # @!attribute [rw] compressed_size_bytes
149
- # @return [Integer]
150
- # The number of compressed bytes sent or received. If missing assumed to
151
- # be the same size as uncompressed.
152
- class MessageEvent
153
- # Indicates whether the message was sent or received.
154
- module Type
155
- # Unknown event type.
156
- TYPE_UNSPECIFIED = 0
157
-
158
- # Indicates a sent message.
159
- SENT = 1
160
-
161
- # Indicates a received message.
162
- RECEIVED = 2
163
- end
164
- end
165
- end
166
-
167
- # A collection of `TimeEvent`s. A `TimeEvent` is a time-stamped annotation
168
- # on the span, consisting of either user-supplied key:value pairs, or
169
- # details of a message sent/received between Spans.
170
- # @!attribute [rw] time_event
171
- # @return [Array<Google::Devtools::Cloudtrace::V2::Span::TimeEvent>]
172
- # A collection of `TimeEvent`s.
173
- # @!attribute [rw] dropped_annotations_count
174
- # @return [Integer]
175
- # The number of dropped annotations in all the included time events.
176
- # If the value is 0, then no annotations were dropped.
177
- # @!attribute [rw] dropped_message_events_count
178
- # @return [Integer]
179
- # The number of dropped message events in all the included time events.
180
- # If the value is 0, then no message events were dropped.
181
- class TimeEvents; end
182
-
183
- # A pointer from the current span to another span in the same trace or in a
184
- # different trace. For example, this can be used in batching operations,
185
- # where a single batch handler processes multiple requests from different
186
- # traces or when the handler receives a request from a different project.
187
- # @!attribute [rw] trace_id
188
- # @return [String]
189
- # The [TRACE_ID] for a trace within a project.
190
- # @!attribute [rw] span_id
191
- # @return [String]
192
- # The [SPAN_ID] for a span within a trace.
193
- # @!attribute [rw] type
194
- # @return [Google::Devtools::Cloudtrace::V2::Span::Link::Type]
195
- # The relationship of the current span relative to the linked span.
196
- # @!attribute [rw] attributes
197
- # @return [Google::Devtools::Cloudtrace::V2::Span::Attributes]
198
- # A set of attributes on the link. You have have up to 32 attributes per
199
- # link.
200
- class Link
201
- # The relationship of the current span relative to the linked span: child,
202
- # parent, or unspecified.
203
- module Type
204
- # The relationship of the two spans is unknown.
205
- TYPE_UNSPECIFIED = 0
206
-
207
- # The linked span is a child of the current span.
208
- CHILD_LINKED_SPAN = 1
209
-
210
- # The linked span is a parent of the current span.
211
- PARENT_LINKED_SPAN = 2
212
- end
213
- end
214
-
215
- # A collection of links, which are references from this span to a span
216
- # in the same or different trace.
217
- # @!attribute [rw] link
218
- # @return [Array<Google::Devtools::Cloudtrace::V2::Span::Link>]
219
- # A collection of links.
220
- # @!attribute [rw] dropped_links_count
221
- # @return [Integer]
222
- # The number of dropped links after the maximum size was enforced. If
223
- # this value is 0, then no links were dropped.
224
- class Links; end
225
-
226
- # Type of span. Can be used to specify additional relationships between spans
227
- # in addition to a parent/child relationship.
228
- module SpanKind
229
- # Unspecified. Do NOT use as default.
230
- # Implementations MAY assume SpanKind.INTERNAL to be default.
231
- SPAN_KIND_UNSPECIFIED = 0
232
-
233
- # Indicates that the span is used internally. Default value.
234
- INTERNAL = 1
235
-
236
- # Indicates that the span covers server-side handling of an RPC or other
237
- # remote network request.
238
- SERVER = 2
239
-
240
- # Indicates that the span covers the client-side wrapper around an RPC or
241
- # other remote request.
242
- CLIENT = 3
243
-
244
- # Indicates that the span describes producer sending a message to a broker.
245
- # Unlike client and server, there is no direct critical path latency
246
- # relationship between producer and consumer spans (e.g. publishing a
247
- # message to a pubsub service).
248
- PRODUCER = 4
249
-
250
- # Indicates that the span describes consumer receiving a message from a
251
- # broker. Unlike client and server, there is no direct critical path
252
- # latency relationship between producer and consumer spans (e.g. receiving
253
- # a message from a pubsub service subscription).
254
- CONSUMER = 5
255
- end
256
- end
257
-
258
- # The allowed types for [VALUE] in a `[KEY]:[VALUE]` attribute.
259
- # @!attribute [rw] string_value
260
- # @return [Google::Devtools::Cloudtrace::V2::TruncatableString]
261
- # A string up to 256 bytes long.
262
- # @!attribute [rw] int_value
263
- # @return [Integer]
264
- # A 64-bit signed integer.
265
- # @!attribute [rw] bool_value
266
- # @return [true, false]
267
- # A Boolean value represented by `true` or `false`.
268
- class AttributeValue; end
269
-
270
- # A call stack appearing in a trace.
271
- # @!attribute [rw] stack_frames
272
- # @return [Google::Devtools::Cloudtrace::V2::StackTrace::StackFrames]
273
- # Stack frames in this stack trace. A maximum of 128 frames are allowed.
274
- # @!attribute [rw] stack_trace_hash_id
275
- # @return [Integer]
276
- # The hash ID is used to conserve network bandwidth for duplicate
277
- # stack traces within a single trace.
278
- #
279
- # Often multiple spans will have identical stack traces.
280
- # The first occurrence of a stack trace should contain both the
281
- # `stackFrame` content and a value in `stackTraceHashId`.
282
- #
283
- # Subsequent spans within the same request can refer
284
- # to that stack trace by only setting `stackTraceHashId`.
285
- class StackTrace
286
- # Represents a single stack frame in a stack trace.
287
- # @!attribute [rw] function_name
288
- # @return [Google::Devtools::Cloudtrace::V2::TruncatableString]
289
- # The fully-qualified name that uniquely identifies the function or
290
- # method that is active in this frame (up to 1024 bytes).
291
- # @!attribute [rw] original_function_name
292
- # @return [Google::Devtools::Cloudtrace::V2::TruncatableString]
293
- # An un-mangled function name, if `function_name` is
294
- # [mangled](http://www.avabodh.com/cxxin/namemangling.html). The name can
295
- # be fully-qualified (up to 1024 bytes).
296
- # @!attribute [rw] file_name
297
- # @return [Google::Devtools::Cloudtrace::V2::TruncatableString]
298
- # The name of the source file where the function call appears (up to 256
299
- # bytes).
300
- # @!attribute [rw] line_number
301
- # @return [Integer]
302
- # The line number in `file_name` where the function call appears.
303
- # @!attribute [rw] column_number
304
- # @return [Integer]
305
- # The column number where the function call appears, if available.
306
- # This is important in JavaScript because of its anonymous functions.
307
- # @!attribute [rw] load_module
308
- # @return [Google::Devtools::Cloudtrace::V2::Module]
309
- # The binary module from where the code was loaded.
310
- # @!attribute [rw] source_version
311
- # @return [Google::Devtools::Cloudtrace::V2::TruncatableString]
312
- # The version of the deployed source code (up to 128 bytes).
313
- class StackFrame; end
314
-
315
- # A collection of stack frames, which can be truncated.
316
- # @!attribute [rw] frame
317
- # @return [Array<Google::Devtools::Cloudtrace::V2::StackTrace::StackFrame>]
318
- # Stack frames in this call stack.
319
- # @!attribute [rw] dropped_frames_count
320
- # @return [Integer]
321
- # The number of stack frames that were dropped because there
322
- # were too many stack frames.
323
- # If this value is 0, then no stack frames were dropped.
324
- class StackFrames; end
325
- end
326
-
327
- # Binary module.
328
- # @!attribute [rw] module
329
- # @return [Google::Devtools::Cloudtrace::V2::TruncatableString]
330
- # For example: main binary, kernel modules, and dynamic libraries
331
- # such as libc.so, sharedlib.so (up to 256 bytes).
332
- # @!attribute [rw] build_id
333
- # @return [Google::Devtools::Cloudtrace::V2::TruncatableString]
334
- # A unique identifier for the module, usually a hash of its
335
- # contents (up to 128 bytes).
336
- class Module; end
337
-
338
- # Represents a string that might be shortened to a specified length.
339
- # @!attribute [rw] value
340
- # @return [String]
341
- # The shortened string. For example, if the original string is 500
342
- # bytes long and the limit of the string is 128 bytes, then
343
- # `value` contains the first 128 bytes of the 500-byte string.
344
- #
345
- # Truncation always happens on a UTF8 character boundary. If there
346
- # are multi-byte characters in the string, then the length of the
347
- # shortened string might be less than the size limit.
348
- # @!attribute [rw] truncated_byte_count
349
- # @return [Integer]
350
- # The number of bytes removed from the original string. If this
351
- # value is 0, then the string was not shortened.
352
- class TruncatableString; end
353
- end
354
- end
355
- end
356
- end