syntax = "proto3";
package pb;
option go_package="pkg/proto/pbgo/trace";
import "span.proto";
// TraceChunk represents a list of spans with the same trace ID. In other words, a chunk of a trace.
message TraceChunk {
// priority specifies sampling priority of the trace.
// @gotags: json:"priority" msg:"priority"
int32 priority = 1;
// origin specifies origin product ("lambda", "rum", etc.) of the trace.
// @gotags: json:"origin" msg:"origin"
string origin = 2;
// spans specifies list of containing spans.
// @gotags: json:"spans" msg:"spans"
repeated Span spans = 3;
// tags specifies tags common in all `spans`.
// @gotags: json:"tags" msg:"tags"
map<string, string> tags = 4;
// droppedTrace specifies whether the trace was dropped by samplers or not.
// @gotags: json:"dropped_trace" msg:"dropped_trace"
bool droppedTrace = 5;
}
// TracerPayload represents a payload the trace agent receives from tracers.
message TracerPayload {
// containerID specifies the ID of the container where the tracer is running on.
// @gotags: json:"container_id" msg:"container_id"
string containerID = 1;
// languageName specifies language of the tracer.
// @gotags: json:"language_name" msg:"language_name"
string languageName = 2;
// languageVersion specifies language version of the tracer.
// @gotags: json:"language_version" msg:"language_version"
string languageVersion = 3;
// tracerVersion specifies version of the tracer.
// @gotags: json:"tracer_version" msg:"tracer_version"
string tracerVersion = 4;
// runtimeID specifies V4 UUID representation of a tracer session.
// @gotags: json:"runtime_id" msg:"runtime_id"
string runtimeID = 5;
// chunks specifies list of containing trace chunks.
// @gotags: json:"chunks" msg:"chunks"
repeated TraceChunk chunks = 6;
// tags specifies tags common in all `chunks`.
// @gotags: json:"tags" msg:"tags"
map<string, string> tags = 7;
// env specifies `env` tag that set with the tracer.
// @gotags: json:"env" msg:"env"
string env = 8;
// hostname specifies hostname of where the tracer is running.
// @gotags: json:"hostname" msg:"hostname"
string hostname = 9;
// version specifies `version` tag that set with the tracer.
// @gotags: json:"app_version" msg:"app_version"
string appVersion = 10;
}