Class: Google::Devtools::Cloudtrace::V1::TraceSpan
- Inherits:
-
Object
- Object
- Google::Devtools::Cloudtrace::V1::TraceSpan
- Defined in:
- lib/google/cloud/trace/v1/doc/google/devtools/cloudtrace/v1/trace.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.
Defined Under Namespace
Modules: SpanKind
Instance Attribute Summary collapse
-
#end_time ⇒ Google::Protobuf::Timestamp
End time of the span in nanoseconds from the UNIX epoch.
-
#kind ⇒ Google::Devtools::Cloudtrace::V1::TraceSpan::SpanKind
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 ⇒ Integer
ID of the parent span, if any.
-
#span_id ⇒ Integer
Identifier for the span.
-
#start_time ⇒ Google::Protobuf::Timestamp
Start time of the span in nanoseconds from the UNIX epoch.
Instance Attribute Details
#end_time ⇒ Google::Protobuf::Timestamp
Returns End time of the span in nanoseconds from the UNIX epoch.
118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 |
# File 'lib/google/cloud/trace/v1/doc/google/devtools/cloudtrace/v1/trace.rb', line 118 class TraceSpan # Type of span. Can be used to specify additional relationships between spans # in addition to a parent/child relationship. module SpanKind # Unspecified. SPAN_KIND_UNSPECIFIED = 0 # Indicates that the span covers server-side handling of an RPC or other # remote network request. RPC_SERVER = 1 # Indicates that the span covers the client-side wrapper around an RPC or # other remote request. RPC_CLIENT = 2 end end |
#kind ⇒ Google::Devtools::Cloudtrace::V1::TraceSpan::SpanKind
Returns 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.
118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 |
# File 'lib/google/cloud/trace/v1/doc/google/devtools/cloudtrace/v1/trace.rb', line 118 class TraceSpan # Type of span. Can be used to specify additional relationships between spans # in addition to a parent/child relationship. module SpanKind # Unspecified. SPAN_KIND_UNSPECIFIED = 0 # Indicates that the span covers server-side handling of an RPC or other # remote network request. RPC_SERVER = 1 # Indicates that the span covers the client-side wrapper around an RPC or # other remote request. RPC_CLIENT = 2 end end |
#labels ⇒ Hash{String => String}
Returns 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/key+ for agents of well-known products (e.g. +/db/mongodb/read_size+).
- +short_host/path/key+ for 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/redirected_url+
- +/http/request/size+
- +/http/response/size+
- +/http/status_code+
- +/http/url+
- +/http/user_agent+
- +/pid+
- +/stacktrace+
- +/tid+.
118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 |
# File 'lib/google/cloud/trace/v1/doc/google/devtools/cloudtrace/v1/trace.rb', line 118 class TraceSpan # Type of span. Can be used to specify additional relationships between spans # in addition to a parent/child relationship. module SpanKind # Unspecified. SPAN_KIND_UNSPECIFIED = 0 # Indicates that the span covers server-side handling of an RPC or other # remote network request. RPC_SERVER = 1 # Indicates that the span covers the client-side wrapper around an RPC or # other remote request. RPC_CLIENT = 2 end end |
#name ⇒ String
Returns 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.
118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 |
# File 'lib/google/cloud/trace/v1/doc/google/devtools/cloudtrace/v1/trace.rb', line 118 class TraceSpan # Type of span. Can be used to specify additional relationships between spans # in addition to a parent/child relationship. module SpanKind # Unspecified. SPAN_KIND_UNSPECIFIED = 0 # Indicates that the span covers server-side handling of an RPC or other # remote network request. RPC_SERVER = 1 # Indicates that the span covers the client-side wrapper around an RPC or # other remote request. RPC_CLIENT = 2 end end |
#parent_span_id ⇒ Integer
Returns ID of the parent span, if any. Optional.
118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 |
# File 'lib/google/cloud/trace/v1/doc/google/devtools/cloudtrace/v1/trace.rb', line 118 class TraceSpan # Type of span. Can be used to specify additional relationships between spans # in addition to a parent/child relationship. module SpanKind # Unspecified. SPAN_KIND_UNSPECIFIED = 0 # Indicates that the span covers server-side handling of an RPC or other # remote network request. RPC_SERVER = 1 # Indicates that the span covers the client-side wrapper around an RPC or # other remote request. RPC_CLIENT = 2 end end |
#span_id ⇒ Integer
Returns Identifier for the span. Must be a 64-bit integer other than 0 and unique within a trace.
118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 |
# File 'lib/google/cloud/trace/v1/doc/google/devtools/cloudtrace/v1/trace.rb', line 118 class TraceSpan # Type of span. Can be used to specify additional relationships between spans # in addition to a parent/child relationship. module SpanKind # Unspecified. SPAN_KIND_UNSPECIFIED = 0 # Indicates that the span covers server-side handling of an RPC or other # remote network request. RPC_SERVER = 1 # Indicates that the span covers the client-side wrapper around an RPC or # other remote request. RPC_CLIENT = 2 end end |
#start_time ⇒ Google::Protobuf::Timestamp
Returns Start time of the span in nanoseconds from the UNIX epoch.
118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 |
# File 'lib/google/cloud/trace/v1/doc/google/devtools/cloudtrace/v1/trace.rb', line 118 class TraceSpan # Type of span. Can be used to specify additional relationships between spans # in addition to a parent/child relationship. module SpanKind # Unspecified. SPAN_KIND_UNSPECIFIED = 0 # Indicates that the span covers server-side handling of an RPC or other # remote network request. RPC_SERVER = 1 # Indicates that the span covers the client-side wrapper around an RPC or # other remote request. RPC_CLIENT = 2 end end |