Enum

span-kind

Describes the relationship between the Span, its parents, and its children in a trace.

enum span-kind {
  client,
  server,
  producer,
  consumer,
  internal,
}

Cases

CaseDescription
clientIndicates that the span describes a request to some remote service. This span is usually the parent of a remote server span and does not end until the response is received.
serverIndicates that the span covers server-side handling of a synchronous RPC or other remote request. This span is often the child of a remote client span that was expected to wait for a response.
producerIndicates that the span describes the initiators of an asynchronous request. This parent span will often end before the corresponding child consumer span, possibly even before the child span starts. In messaging scenarios with batching, tracing individual messages requires a new producer span per message to be created.
consumerIndicates that the span describes a child of an asynchronous consumer request.
internalDefault value. Indicates that the span represents an internal operation within an application, as opposed to an operations with remote parents or children.