Class: Google::Cloud::Trace::V1::TraceSpan

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/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 Classes: LabelsEntry

Instance Attribute Summary collapse

Instance Attribute Details

#end_time::Google::Protobuf::Timestamp

Returns End time of the span in nanoseconds from the UNIX epoch.

Returns:



121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
# File 'proto_docs/google/devtools/cloudtrace/v1/trace.rb', line 121

class TraceSpan
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # 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::Cloud::Trace::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.

Returns:

  • (::Google::Cloud::Trace::V1::TraceSpan::SpanKind)

    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.



121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
# File 'proto_docs/google/devtools/cloudtrace/v1/trace.rb', line 121

class TraceSpan
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # 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::Google::Protobuf::Map{::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/path
  • /http/redirected_url
  • /http/request/size
  • /http/response/size
  • /http/route
  • /http/status_code
  • /http/url
  • /http/user_agent
  • /pid
  • /stacktrace
  • /tid.

Returns:

  • (::Google::Protobuf::Map{::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/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/path
    • /http/redirected_url
    • /http/request/size
    • /http/response/size
    • /http/route
    • /http/status_code
    • /http/url
    • /http/user_agent
    • /pid
    • /stacktrace
    • /tid


121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
# File 'proto_docs/google/devtools/cloudtrace/v1/trace.rb', line 121

class TraceSpan
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # 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 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.

Returns:

  • (::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 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.



121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
# File 'proto_docs/google/devtools/cloudtrace/v1/trace.rb', line 121

class TraceSpan
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # 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 Optional. ID of the parent span, if any.

Returns:

  • (::Integer)

    Optional. ID of the parent span, if any.



121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
# File 'proto_docs/google/devtools/cloudtrace/v1/trace.rb', line 121

class TraceSpan
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # 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. For example, 2205310701640571284.

Returns:

  • (::Integer)

    Identifier for the span. Must be a 64-bit integer other than 0 and unique within a trace. For example, 2205310701640571284.



121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
# File 'proto_docs/google/devtools/cloudtrace/v1/trace.rb', line 121

class TraceSpan
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # 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.

Returns:



121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
# File 'proto_docs/google/devtools/cloudtrace/v1/trace.rb', line 121

class TraceSpan
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class LabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # 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