Stackdriver Trace V1 Client - Class TraceSpan (2.0.0-RC1)

Reference documentation and code samples for the Stackdriver Trace V1 Client class 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.

Generated from protobuf message google.devtools.cloudtrace.v1.TraceSpan

Namespace

Google \ Cloud \ Trace \ V1

Methods

__construct

Constructor.

Parameters
Name Description
data array

Optional. Data for populating the Message object.

↳ span_id int|string

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

↳ kind int

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.

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

↳ start_time Google\Protobuf\Timestamp

Start time of the span in nanoseconds from the UNIX epoch.

↳ end_time Google\Protobuf\Timestamp

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

↳ parent_span_id int|string

Optional. ID of the parent span, if any.

↳ labels array|Google\Protobuf\Internal\MapField

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

getSpanId

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

Returns
Type Description
int|string

setSpanId

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

Parameter
Name Description
var int|string
Returns
Type Description
$this

getKind

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
Type Description
int Enum of type SpanKind.

setKind

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.

Parameter
Name Description
var int

Enum of type SpanKind.

Returns
Type Description
$this

getName

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
Type Description
string

setName

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.

Parameter
Name Description
var string
Returns
Type Description
$this

getStartTime

Start time of the span in nanoseconds from the UNIX epoch.

Returns
Type Description
Google\Protobuf\Timestamp|null

hasStartTime

clearStartTime

setStartTime

Start time of the span in nanoseconds from the UNIX epoch.

Parameter
Name Description
var Google\Protobuf\Timestamp
Returns
Type Description
$this

getEndTime

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

Returns
Type Description
Google\Protobuf\Timestamp|null

hasEndTime

clearEndTime

setEndTime

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

Parameter
Name Description
var Google\Protobuf\Timestamp
Returns
Type Description
$this

getParentSpanId

Optional. ID of the parent span, if any.

Returns
Type Description
int|string

setParentSpanId

Optional. ID of the parent span, if any.

Parameter
Name Description
var int|string
Returns
Type Description
$this

getLabels

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
Type Description
Google\Protobuf\Internal\MapField

setLabels

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
Parameter
Name Description
var array|Google\Protobuf\Internal\MapField
Returns
Type Description
$this