google_tracing_v1

package
v0.0.0-...-dbc791b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 3, 2017 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Span_Link_Type_name = map[int32]string{
	0: "UNSPECIFIED",
	1: "CHILD",
	2: "PARENT",
}
View Source
var Span_Link_Type_value = map[string]int32{
	"UNSPECIFIED": 0,
	"CHILD":       1,
	"PARENT":      2,
}
View Source
var Span_TimeEvent_NetworkEvent_Type_name = map[int32]string{
	0: "UNSPECIFIED",
	1: "SENT",
	2: "RECV",
}
View Source
var Span_TimeEvent_NetworkEvent_Type_value = map[string]int32{
	"UNSPECIFIED": 0,
	"SENT":        1,
	"RECV":        2,
}

Functions

This section is empty.

Types

type LabelValue

type LabelValue struct {
	// The value of the label.
	//
	// Types that are valid to be assigned to Value:
	//	*LabelValue_StringValue
	//	*LabelValue_IntValue
	//	*LabelValue_BoolValue
	Value isLabelValue_Value `protobuf_oneof:"value"`
}

Allowed label values.

func (*LabelValue) Descriptor

func (*LabelValue) Descriptor() ([]byte, []int)

func (*LabelValue) GetBoolValue

func (m *LabelValue) GetBoolValue() bool

func (*LabelValue) GetIntValue

func (m *LabelValue) GetIntValue() int64

func (*LabelValue) GetStringValue

func (m *LabelValue) GetStringValue() string

func (*LabelValue) GetValue

func (m *LabelValue) GetValue() isLabelValue_Value

func (*LabelValue) ProtoMessage

func (*LabelValue) ProtoMessage()

func (*LabelValue) Reset

func (m *LabelValue) Reset()

func (*LabelValue) String

func (m *LabelValue) String() string

func (*LabelValue) XXX_OneofFuncs

func (*LabelValue) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})

XXX_OneofFuncs is for the internal use of the proto package.

type LabelValue_BoolValue

type LabelValue_BoolValue struct {
	BoolValue bool `protobuf:"varint,3,opt,name=bool_value,json=boolValue,proto3,oneof"`
}

type LabelValue_IntValue

type LabelValue_IntValue struct {
	IntValue int64 `protobuf:"varint,2,opt,name=int_value,json=intValue,proto3,oneof"`
}

type LabelValue_StringValue

type LabelValue_StringValue struct {
	StringValue string `protobuf:"bytes,1,opt,name=string_value,json=stringValue,proto3,oneof"`
}

type Module

type Module struct {
	// Binary module.
	// E.g. main binary, kernel modules, and dynamic libraries
	// such as libc.so, sharedlib.so
	Module string `protobuf:"bytes,1,opt,name=module,proto3" json:"module,omitempty"`
	// Build_id is a unique identifier for the module,
	// probably a hash of its contents
	BuildId string `protobuf:"bytes,2,opt,name=build_id,json=buildId,proto3" json:"build_id,omitempty"`
}

func (*Module) Descriptor

func (*Module) Descriptor() ([]byte, []int)

func (*Module) GetBuildId

func (m *Module) GetBuildId() string

func (*Module) GetModule

func (m *Module) GetModule() string

func (*Module) ProtoMessage

func (*Module) ProtoMessage()

func (*Module) Reset

func (m *Module) Reset()

func (*Module) String

func (m *Module) String() string

type Span

type Span struct {
	// Identifier for the span. Must be a 64-bit integer other than 0 and
	// unique within a trace.
	Id uint64 `protobuf:"fixed64,1,opt,name=id,proto3" json:"id,omitempty"`
	// Name of the span. 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.
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// ID of parent span. 0 or missing if this is a root span.
	ParentId uint64 `protobuf:"fixed64,3,opt,name=parent_id,json=parentId,proto3" json:"parent_id,omitempty"`
	// Local machine clock in nanoseconds from the UNIX epoch,
	// at which span execution started.
	// On the server side these are the times when the server application
	// handler starts running.
	LocalStartTime *google_protobuf1.Timestamp `protobuf:"bytes,4,opt,name=local_start_time,json=localStartTime" json:"local_start_time,omitempty"`
	// Local machine clock in nanoseconds from the UNIX epoch,
	// at which span execution ended.
	// On the server side these are the times when the server application
	// handler finishes running.
	LocalEndTime *google_protobuf1.Timestamp `protobuf:"bytes,5,opt,name=local_end_time,json=localEndTime" json:"local_end_time,omitempty"`
	// Properties of a span. Labels at the span level.
	// E.g.
	// "/instance_id": "my-instance"
	// "/zone": "us-central1-a"
	// "/grpc/peer_address": "ip:port" (dns, etc.)
	// "/grpc/deadline": "Duration"
	// "/http/user_agent"
	// "/http/request_bytes": 300
	// "/http/response_bytes": 1200
	// "/http/url": google.com/apis
	// "/pid"
	// "abc.com/mylabel": "my label value"
	Labels map[string]*LabelValue `` /* 139-byte string literal not displayed */
	// Stack trace captured at the start of the span. This is optional.
	StackTrace *StackTrace `protobuf:"bytes,7,opt,name=stack_trace,json=stackTrace" json:"stack_trace,omitempty"`
	// A collection of time-stamped events.
	TimeEvents []*Span_TimeEvent `protobuf:"bytes,8,rep,name=time_events,json=timeEvents" json:"time_events,omitempty"`
	// A collection of links.
	Links []*Span_Link `protobuf:"bytes,9,rep,name=links" json:"links,omitempty"`
	// The final status of the Span. This is optional.
	Status *google_rpc.Status `protobuf:"bytes,10,opt,name=status" json:"status,omitempty"`
	// True if this Span has a remote parent (is an RPC server Span).
	HasRemoteParent bool `protobuf:"varint,11,opt,name=has_remote_parent,json=hasRemoteParent,proto3" json:"has_remote_parent,omitempty"`
}

A span represents a single operation 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 and, optionally, one or more subspans for its sub-operations. Spans do not need to be contiguous. There may be gaps between spans in a trace.

func (*Span) Descriptor

func (*Span) Descriptor() ([]byte, []int)

func (*Span) GetHasRemoteParent

func (m *Span) GetHasRemoteParent() bool

func (*Span) GetId

func (m *Span) GetId() uint64

func (*Span) GetLabels

func (m *Span) GetLabels() map[string]*LabelValue
func (m *Span) GetLinks() []*Span_Link

func (*Span) GetLocalEndTime

func (m *Span) GetLocalEndTime() *google_protobuf1.Timestamp

func (*Span) GetLocalStartTime

func (m *Span) GetLocalStartTime() *google_protobuf1.Timestamp

func (*Span) GetName

func (m *Span) GetName() string

func (*Span) GetParentId

func (m *Span) GetParentId() uint64

func (*Span) GetStackTrace

func (m *Span) GetStackTrace() *StackTrace

func (*Span) GetStatus

func (m *Span) GetStatus() *google_rpc.Status

func (*Span) GetTimeEvents

func (m *Span) GetTimeEvents() []*Span_TimeEvent

func (*Span) ProtoMessage

func (*Span) ProtoMessage()

func (*Span) Reset

func (m *Span) Reset()

func (*Span) String

func (m *Span) String() string
type Span_Link struct {
	// The trace and span identifier of the linked span.
	TraceId *TraceId       `protobuf:"bytes,1,opt,name=trace_id,json=traceId" json:"trace_id,omitempty"`
	SpanId  uint64         `protobuf:"fixed64,2,opt,name=span_id,json=spanId,proto3" json:"span_id,omitempty"`
	Type    Span_Link_Type `protobuf:"varint,3,opt,name=type,proto3,enum=google.tracing.v1.Span_Link_Type" json:"type,omitempty"`
}

Link one span with another which may be in a different Trace. Used (for example) in batching operations, where a single batch handler processes multiple requests from different traces.

func (*Span_Link) Descriptor

func (*Span_Link) Descriptor() ([]byte, []int)

func (*Span_Link) GetSpanId

func (m *Span_Link) GetSpanId() uint64

func (*Span_Link) GetTraceId

func (m *Span_Link) GetTraceId() *TraceId

func (*Span_Link) GetType

func (m *Span_Link) GetType() Span_Link_Type

func (*Span_Link) ProtoMessage

func (*Span_Link) ProtoMessage()

func (*Span_Link) Reset

func (m *Span_Link) Reset()

func (*Span_Link) String

func (m *Span_Link) String() string
type Span_Link_Type int32

The type of the link.

const (
	Span_Link_UNSPECIFIED Span_Link_Type = 0
	Span_Link_CHILD       Span_Link_Type = 1
	Span_Link_PARENT      Span_Link_Type = 2
)
func (Span_Link_Type) EnumDescriptor() ([]byte, []int)
func (x Span_Link_Type) String() string

type Span_TimeEvent

type Span_TimeEvent struct {
	// The local machine absolute timestamp when this event happened.
	LocalTime *google_protobuf1.Timestamp `protobuf:"bytes,1,opt,name=local_time,json=localTime" json:"local_time,omitempty"`
	// Types that are valid to be assigned to Value:
	//	*Span_TimeEvent_Annotation_
	//	*Span_TimeEvent_NetworkEvent_
	Value isSpan_TimeEvent_Value `protobuf_oneof:"value"`
}

A time-stamped annotation in the Span.

func (*Span_TimeEvent) Descriptor

func (*Span_TimeEvent) Descriptor() ([]byte, []int)

func (*Span_TimeEvent) GetAnnotation

func (m *Span_TimeEvent) GetAnnotation() *Span_TimeEvent_Annotation

func (*Span_TimeEvent) GetLocalTime

func (m *Span_TimeEvent) GetLocalTime() *google_protobuf1.Timestamp

func (*Span_TimeEvent) GetNetworkEvent

func (m *Span_TimeEvent) GetNetworkEvent() *Span_TimeEvent_NetworkEvent

func (*Span_TimeEvent) GetValue

func (m *Span_TimeEvent) GetValue() isSpan_TimeEvent_Value

func (*Span_TimeEvent) ProtoMessage

func (*Span_TimeEvent) ProtoMessage()

func (*Span_TimeEvent) Reset

func (m *Span_TimeEvent) Reset()

func (*Span_TimeEvent) String

func (m *Span_TimeEvent) String() string

func (*Span_TimeEvent) XXX_OneofFuncs

func (*Span_TimeEvent) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})

XXX_OneofFuncs is for the internal use of the proto package.

type Span_TimeEvent_Annotation

type Span_TimeEvent_Annotation struct {
	// A user-supplied message describing the event.
	Description string `protobuf:"bytes,1,opt,name=description,proto3" json:"description,omitempty"`
	// A set of labels on the annotation.
	Labels map[string]*LabelValue `` /* 139-byte string literal not displayed */
}

Text annotation with a set of labels.

func (*Span_TimeEvent_Annotation) Descriptor

func (*Span_TimeEvent_Annotation) Descriptor() ([]byte, []int)

func (*Span_TimeEvent_Annotation) GetDescription

func (m *Span_TimeEvent_Annotation) GetDescription() string

func (*Span_TimeEvent_Annotation) GetLabels

func (m *Span_TimeEvent_Annotation) GetLabels() map[string]*LabelValue

func (*Span_TimeEvent_Annotation) ProtoMessage

func (*Span_TimeEvent_Annotation) ProtoMessage()

func (*Span_TimeEvent_Annotation) Reset

func (m *Span_TimeEvent_Annotation) Reset()

func (*Span_TimeEvent_Annotation) String

func (m *Span_TimeEvent_Annotation) String() string

type Span_TimeEvent_Annotation_

type Span_TimeEvent_Annotation_ struct {
	Annotation *Span_TimeEvent_Annotation `protobuf:"bytes,2,opt,name=annotation,oneof"`
}

type Span_TimeEvent_NetworkEvent

type Span_TimeEvent_NetworkEvent struct {
	// If available, this is the kernel time:
	// For sent messages, this is the time at which the first bit was sent.
	// For received messages, this is the time at which the last bit was
	// received.
	KernelTime *google_protobuf1.Timestamp      `protobuf:"bytes,1,opt,name=kernel_time,json=kernelTime" json:"kernel_time,omitempty"`
	Type       Span_TimeEvent_NetworkEvent_Type `protobuf:"varint,2,opt,name=type,proto3,enum=google.tracing.v1.Span_TimeEvent_NetworkEvent_Type" json:"type,omitempty"`
	// Every message has an identifier, that must be different from all the
	// network messages in this span.
	// This is very important when the request/response are streamed.
	MessageId uint64 `protobuf:"varint,3,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
	// Number of bytes send/receive.
	MessageSize uint64 `protobuf:"varint,4,opt,name=message_size,json=messageSize,proto3" json:"message_size,omitempty"`
}

An event describing an RPC message sent/received on the network.

func (*Span_TimeEvent_NetworkEvent) Descriptor

func (*Span_TimeEvent_NetworkEvent) Descriptor() ([]byte, []int)

func (*Span_TimeEvent_NetworkEvent) GetKernelTime

func (*Span_TimeEvent_NetworkEvent) GetMessageId

func (m *Span_TimeEvent_NetworkEvent) GetMessageId() uint64

func (*Span_TimeEvent_NetworkEvent) GetMessageSize

func (m *Span_TimeEvent_NetworkEvent) GetMessageSize() uint64

func (*Span_TimeEvent_NetworkEvent) GetType

func (*Span_TimeEvent_NetworkEvent) ProtoMessage

func (*Span_TimeEvent_NetworkEvent) ProtoMessage()

func (*Span_TimeEvent_NetworkEvent) Reset

func (m *Span_TimeEvent_NetworkEvent) Reset()

func (*Span_TimeEvent_NetworkEvent) String

func (m *Span_TimeEvent_NetworkEvent) String() string

type Span_TimeEvent_NetworkEvent_

type Span_TimeEvent_NetworkEvent_ struct {
	NetworkEvent *Span_TimeEvent_NetworkEvent `protobuf:"bytes,3,opt,name=network_event,json=networkEvent,oneof"`
}

type Span_TimeEvent_NetworkEvent_Type

type Span_TimeEvent_NetworkEvent_Type int32

The type of the network event. SENT or RECV event.

const (
	Span_TimeEvent_NetworkEvent_UNSPECIFIED Span_TimeEvent_NetworkEvent_Type = 0
	Span_TimeEvent_NetworkEvent_SENT        Span_TimeEvent_NetworkEvent_Type = 1
	Span_TimeEvent_NetworkEvent_RECV        Span_TimeEvent_NetworkEvent_Type = 2
)

func (Span_TimeEvent_NetworkEvent_Type) EnumDescriptor

func (Span_TimeEvent_NetworkEvent_Type) EnumDescriptor() ([]byte, []int)

func (Span_TimeEvent_NetworkEvent_Type) String

type StackTrace

type StackTrace struct {
	// Stack frames of this stack trace.
	StackFrame []*StackTrace_StackFrame `protobuf:"bytes,1,rep,name=stack_frame,json=stackFrame" json:"stack_frame,omitempty"`
	// User can choose to use his own hash function to hash large labels to save
	// network bandwidth and storage.
	// Typical usage is to pass both initially to inform the storage of the
	// mapping. And in subsequent calls, pass in stack_trace_hash_id only.
	// User shall verify the hash value is successfully stored.
	StackTraceHashId uint64 `protobuf:"varint,2,opt,name=stack_trace_hash_id,json=stackTraceHashId,proto3" json:"stack_trace_hash_id,omitempty"`
}

func (*StackTrace) Descriptor

func (*StackTrace) Descriptor() ([]byte, []int)

func (*StackTrace) GetStackFrame

func (m *StackTrace) GetStackFrame() []*StackTrace_StackFrame

func (*StackTrace) GetStackTraceHashId

func (m *StackTrace) GetStackTraceHashId() uint64

func (*StackTrace) ProtoMessage

func (*StackTrace) ProtoMessage()

func (*StackTrace) Reset

func (m *StackTrace) Reset()

func (*StackTrace) String

func (m *StackTrace) String() string

type StackTrace_StackFrame

type StackTrace_StackFrame struct {
	// Fully qualified names which uniquely identify function/method/etc.
	FunctionName string `protobuf:"bytes,1,opt,name=function_name,json=functionName,proto3" json:"function_name,omitempty"`
	// Used when function name is ‘mangled’. Not guaranteed to be fully
	// qualified but usually it is.
	OrigFunctionName string `protobuf:"bytes,2,opt,name=orig_function_name,json=origFunctionName,proto3" json:"orig_function_name,omitempty"`
	// File name of the frame.
	FileName string `protobuf:"bytes,3,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"`
	// Line number of the frame.
	LineNumber int64 `protobuf:"varint,4,opt,name=line_number,json=lineNumber,proto3" json:"line_number,omitempty"`
	// Column number is important in JavaScript(anonymous functions),
	// Might not be available in some languages.
	ColumnNumber int64 `protobuf:"varint,5,opt,name=column_number,json=columnNumber,proto3" json:"column_number,omitempty"`
	// Binary module the code is loaded from.
	LoadModule *Module `protobuf:"bytes,6,opt,name=load_module,json=loadModule" json:"load_module,omitempty"`
	// source_version is deployment specific. It might be
	// better to be stored in deployment metadata.
	// However, in distributed tracing, it’s hard to keep track of
	// source/binary versions at one place for all spans.
	SourceVersion string `protobuf:"bytes,7,opt,name=source_version,json=sourceVersion,proto3" json:"source_version,omitempty"`
}

Presents a single stack frame in a stack trace.

func (*StackTrace_StackFrame) Descriptor

func (*StackTrace_StackFrame) Descriptor() ([]byte, []int)

func (*StackTrace_StackFrame) GetColumnNumber

func (m *StackTrace_StackFrame) GetColumnNumber() int64

func (*StackTrace_StackFrame) GetFileName

func (m *StackTrace_StackFrame) GetFileName() string

func (*StackTrace_StackFrame) GetFunctionName

func (m *StackTrace_StackFrame) GetFunctionName() string

func (*StackTrace_StackFrame) GetLineNumber

func (m *StackTrace_StackFrame) GetLineNumber() int64

func (*StackTrace_StackFrame) GetLoadModule

func (m *StackTrace_StackFrame) GetLoadModule() *Module

func (*StackTrace_StackFrame) GetOrigFunctionName

func (m *StackTrace_StackFrame) GetOrigFunctionName() string

func (*StackTrace_StackFrame) GetSourceVersion

func (m *StackTrace_StackFrame) GetSourceVersion() string

func (*StackTrace_StackFrame) ProtoMessage

func (*StackTrace_StackFrame) ProtoMessage()

func (*StackTrace_StackFrame) Reset

func (m *StackTrace_StackFrame) Reset()

func (*StackTrace_StackFrame) String

func (m *StackTrace_StackFrame) String() string

type Trace

type Trace struct {
	// Globally unique identifier for the trace. Common to all the spans.
	TraceId *TraceId `protobuf:"bytes,1,opt,name=trace_id,json=traceId" json:"trace_id,omitempty"`
	// Collection of spans in the trace. The root span has parent_id == 0.
	Spans []*Span `protobuf:"bytes,2,rep,name=spans" json:"spans,omitempty"`
}

A trace describes how long it takes for an application to perform some operations. It consists of a tree of spans, each of which contains details about an operation with time information and operation details.

func (*Trace) Descriptor

func (*Trace) Descriptor() ([]byte, []int)

func (*Trace) GetSpans

func (m *Trace) GetSpans() []*Span

func (*Trace) GetTraceId

func (m *Trace) GetTraceId() *TraceId

func (*Trace) ProtoMessage

func (*Trace) ProtoMessage()

func (*Trace) Reset

func (m *Trace) Reset()

func (*Trace) String

func (m *Trace) String() string

type TraceId

type TraceId struct {
	// Trace ID specified as a hex-encoded string. *Must* be 32 bytes long.
	HexEncoded string `protobuf:"bytes,1,opt,name=hex_encoded,json=hexEncoded,proto3" json:"hex_encoded,omitempty"`
}

A TraceId uniquely identifies a Trace. It is conceptually a 128-bit value, represented as a string, containing the hex-encoded value.

func (*TraceId) Descriptor

func (*TraceId) Descriptor() ([]byte, []int)

func (*TraceId) GetHexEncoded

func (m *TraceId) GetHexEncoded() string

func (*TraceId) ProtoMessage

func (*TraceId) ProtoMessage()

func (*TraceId) Reset

func (m *TraceId) Reset()

func (*TraceId) String

func (m *TraceId) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL