Class: Google::Apis::CloudtraceV1::TraceSpan
- Inherits:
-
Object
- Object
- Google::Apis::CloudtraceV1::TraceSpan
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/cloudtrace_v1/classes.rb,
lib/google/apis/cloudtrace_v1/representations.rb,
lib/google/apis/cloudtrace_v1/representations.rb
Overview
A span represents a single timed event within a trace. Spans can be nested and form a trace tree. Often, a trace contains a root span that describes the end- to-end latency of an operation and, optionally, one or more subspans for its suboperations. Spans do not need to be contiguous. There may be gaps between spans in a trace.
Instance Attribute Summary collapse
-
#end_time ⇒ String
Required.
-
#kind ⇒ String
Optional.
-
#labels ⇒ Hash<String,String>
Optional.
-
#name ⇒ String
Required.
-
#parent_span_id ⇒ Fixnum
Optional.
-
#span_id ⇒ Fixnum
Required.
-
#start_time ⇒ String
Required.
Instance Method Summary collapse
-
#initialize(**args) ⇒ TraceSpan
constructor
A new instance of TraceSpan.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ TraceSpan
Returns a new instance of TraceSpan.
158 159 160 |
# File 'lib/google/apis/cloudtrace_v1/classes.rb', line 158 def initialize(**args) update!(**args) end |
Instance Attribute Details
#end_time ⇒ String
Required. End time of the span in seconds and nanoseconds from the UNIX epoch.
Corresponds to the JSON property endTime
114 115 116 |
# File 'lib/google/apis/cloudtrace_v1/classes.rb', line 114 def end_time @end_time end |
#kind ⇒ String
Optional. Distinguishes between spans generated in a particular context. For
example, two spans with the same name may be distinguished using RPC_CLIENT
and RPC_SERVER to identify queueing latency associated with the span.
Corresponds to the JSON property kind
121 122 123 |
# File 'lib/google/apis/cloudtrace_v1/classes.rb', line 121 def kind @kind end |
#labels ⇒ Hash<String,String>
Optional. Collection of labels associated with the span. Label keys must be
less than 128 bytes. Label values must be less than 16 KiB. Some keys might
have predefined meaning, and you can also create your own. For more
information, see Cloud Trace labels.
Corresponds to the JSON property labels
130 131 132 |
# File 'lib/google/apis/cloudtrace_v1/classes.rb', line 130 def labels @labels end |
#name ⇒ String
Required. Name of the span. Must be less than 128 bytes. The span name is
sanitized and displayed in the Trace tool in the Google Cloud Platform Console.
The name may be a method name or some other per-call site name. For the same
executable and the same call point, a best practice is to use a consistent
name, which makes it easier to correlate cross-trace spans.
Corresponds to the JSON property name
139 140 141 |
# File 'lib/google/apis/cloudtrace_v1/classes.rb', line 139 def name @name end |
#parent_span_id ⇒ Fixnum
Optional. ID of the parent span, if any.
Corresponds to the JSON property parentSpanId
144 145 146 |
# File 'lib/google/apis/cloudtrace_v1/classes.rb', line 144 def parent_span_id @parent_span_id end |
#span_id ⇒ Fixnum
Required. Identifier for the span. Must be a 64-bit integer other than 0 and
unique within a trace. For example, 2205310701640571284.
Corresponds to the JSON property spanId
150 151 152 |
# File 'lib/google/apis/cloudtrace_v1/classes.rb', line 150 def span_id @span_id end |
#start_time ⇒ String
Required. Start time of the span in seconds and nanoseconds from the UNIX
epoch.
Corresponds to the JSON property startTime
156 157 158 |
# File 'lib/google/apis/cloudtrace_v1/classes.rb', line 156 def start_time @start_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
163 164 165 166 167 168 169 170 171 |
# File 'lib/google/apis/cloudtrace_v1/classes.rb', line 163 def update!(**args) @end_time = args[:end_time] if args.key?(:end_time) @kind = args[:kind] if args.key?(:kind) @labels = args[:labels] if args.key?(:labels) @name = args[:name] if args.key?(:name) @parent_span_id = args[:parent_span_id] if args.key?(:parent_span_id) @span_id = args[:span_id] if args.key?(:span_id) @start_time = args[:start_time] if args.key?(:start_time) end |