class Google::Apis::CloudtraceV1::TraceSpan

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.

Attributes

end_time[RW]

End time of the span in nanoseconds from the UNIX epoch. Corresponds to the JSON property `endTime` @return [String]

kind[RW]

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` @return [String]

labels[RW]

Collection of labels associated with the span. Corresponds to the JSON property `labels` @return [Hash<String,String>]

name[RW]

Name of the trace. The trace name is sanitized and displayed in the Cloud Trace tool in the Google Developers 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` @return [String]

parent_span_id[RW]

ID of the parent span, if any. Optional. Corresponds to the JSON property `parentSpanId` @return [String]

span_id[RW]

Identifier for the span. This identifier must be unique within a trace. Corresponds to the JSON property `spanId` @return [String]

start_time[RW]

Start time of the span in nanoseconds from the UNIX epoch. Corresponds to the JSON property `startTime` @return [String]

Public Class Methods

new(**args) click to toggle source
# File generated/google/apis/cloudtrace_v1/classes.rb, line 135
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File generated/google/apis/cloudtrace_v1/classes.rb, line 140
def update!(**args)
  @span_id = args[:span_id] if args.key?(:span_id)
  @kind = args[:kind] if args.key?(:kind)
  @name = args[:name] if args.key?(:name)
  @start_time = args[:start_time] if args.key?(:start_time)
  @end_time = args[:end_time] if args.key?(:end_time)
  @parent_span_id = args[:parent_span_id] if args.key?(:parent_span_id)
  @labels = args[:labels] if args.key?(:labels)
end