Class: Google::Apis::CloudtraceV1::TraceSpan
- Inherits:
- 
      Object
      
        - Object
- Google::Apis::CloudtraceV1::TraceSpan
 
- Defined in:
- generated/google/apis/cloudtrace_v1/classes.rb,
 generated/google/apis/cloudtrace_v1/representations.rb,
 generated/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 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    End time of the span in nanoseconds from the UNIX epoch. 
- 
  
    
      #kind  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    Distinguishes between spans generated in a particular context. 
- 
  
    
      #labels  ⇒ Hash<String,String> 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    Collection of labels associated with the span. 
- 
  
    
      #name  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    Name of the span. 
- 
  
    
      #parent_span_id  ⇒ Fixnum 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    ID of the parent span, if any. 
- 
  
    
      #span_id  ⇒ Fixnum 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    Identifier for the span. 
- 
  
    
      #start_time  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    Start time of the span in nanoseconds from the UNIX epoch. 
Instance Method Summary collapse
- 
  
    
      #initialize(**args)  ⇒ TraceSpan 
    
    
  
  
  
    constructor
  
  
  
  
  
  
  
    A new instance of TraceSpan. 
- 
  
    
      #update!(**args)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    Update properties of this object. 
Methods included from Google::Apis::Core::JsonObjectSupport
Methods included from Google::Apis::Core::Hashable
Constructor Details
#initialize(**args) ⇒ TraceSpan
Returns a new instance of TraceSpan
| 187 188 189 | # File 'generated/google/apis/cloudtrace_v1/classes.rb', line 187 def initialize(**args) update!(**args) end | 
Instance Attribute Details
#end_time ⇒ String
End time of the span in nanoseconds from the UNIX epoch.
Corresponds to the JSON property endTime
| 116 117 118 | # File 'generated/google/apis/cloudtrace_v1/classes.rb', line 116 def end_time @end_time end | 
#kind ⇒ String
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
| 123 124 125 | # File 'generated/google/apis/cloudtrace_v1/classes.rb', line 123 def kind @kind end | 
#labels ⇒ Hash<String,String>
Collection of labels associated with the span. Label keys must be less than
128 bytes. Label values must be less than 16 kilobytes (10MB for
/stacktrace values).
Some predefined label keys exist, or you may create your own. When creating
your own, we recommend the following formats:
- /category/product/keyfor agents of well-known products (e.g.- /db/mongodb/read_size).
- short_host/path/keyfor domain-specific keys (e.g.- foo.com/myproduct/bar) Predefined labels include:
-   /agent
-   /component
-   /error/message
-   /error/name
-   /http/client_city
-   /http/client_country
-   /http/client_protocol
-   /http/client_region
-   /http/host
-   /http/method
-   /http/path
-   /http/redirected_url
-   /http/request/size
-   /http/response/size
-   /http/route
-   /http/status_code
-   /http/url
-   /http/user_agent
-   /pid
-   /stacktrace
-   /tidCorresponds to the JSON propertylabels
| 158 159 160 | # File 'generated/google/apis/cloudtrace_v1/classes.rb', line 158 def labels @labels end | 
#name ⇒ String
Name of the span. Must be less than 128 bytes. The span name is sanitized
and displayed in the Stackdriver Trace tool in the
% dynamic print site_values.console_name %.
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
| 169 170 171 | # File 'generated/google/apis/cloudtrace_v1/classes.rb', line 169 def name @name end | 
#parent_span_id ⇒ Fixnum
ID of the parent span, if any. Optional.
Corresponds to the JSON property parentSpanId
| 174 175 176 | # File 'generated/google/apis/cloudtrace_v1/classes.rb', line 174 def parent_span_id @parent_span_id end | 
#span_id ⇒ Fixnum
Identifier for the span. Must be a 64-bit integer other than 0 and
unique within a trace.
Corresponds to the JSON property spanId
| 180 181 182 | # File 'generated/google/apis/cloudtrace_v1/classes.rb', line 180 def span_id @span_id end | 
#start_time ⇒ String
Start time of the span in nanoseconds from the UNIX epoch.
Corresponds to the JSON property startTime
| 185 186 187 | # File 'generated/google/apis/cloudtrace_v1/classes.rb', line 185 def start_time @start_time end | 
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
| 192 193 194 195 196 197 198 199 200 | # File 'generated/google/apis/cloudtrace_v1/classes.rb', line 192 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 |