package zipkin.proto3

Mouse Melon logoGet desktop application:
View/edit binary Protocol Buffers messages

service SpanService

zipkin.proto:227

SpanService allows reporting spans using gRPC, as opposed to HTTP POST reporting. Implementations are asynchronous and may drop spans for reasons of sampling or storage availability. While this is primarily used to store spans, other operations may take place such as aggregation of service dependencies or data cleaning.

message Annotation

zipkin.proto:189

Associates an event that explains latency with a timestamp. Unlike log statements, annotations are often codes. Ex. "ws" for WireSend The next id is 3.

Used in: Span

message Endpoint

zipkin.proto:165

The network context of a node in the service graph. The next id is 5.

Used in: Span

message Span

zipkin.proto:52

A span is a single-host view of an operation. A trace is a series of spans (often RPC calls) which nest to form a latency tree. Spans are in the same trace when they share the same trace ID. The parent_id field establishes the position of one span in the tree. The root span is where parent_id is Absent and usually has the longest duration in the trace. However, nested asynchronous work can materialize as child spans whose duration exceed the root span. Spans usually represent remote activity such as RPC calls, or messaging producers and consumers. However, they can also represent in-process activity in any position of the trace. For example, a root span could represent a server receiving an initial client request. A root span could also represent a scheduled job that has no remote context. Encoding notes: Epoch timestamp are encoded fixed64 as varint would also be 8 bytes, and more expensive to encode and size. Duration is stored uint64, as often the numbers are quite small. Default values are ok, as only natural numbers are used. For example, zero is an invalid timestamp and an invalid duration, false values for debug or shared are ignorable, and zero-length strings also coerce to null. The next id is 14. Note fields up to 15 take 1 byte to encode. Take care when adding new fields https://developers.google.com/protocol-buffers/docs/proto3#assigning-tags

Used in: ListOfSpans

enum Span.Kind

zipkin.proto:69

When present, kind clarifies timestamp, duration and remote_endpoint. When absent, the span is local or incomplete. Unlike client and server, there is no direct critical path latency relationship between producer and consumer spans.

Used in: Span