Documentation
¶
Index ¶
- func GenerateEmptyTraceData() ([]byte, error)
- func GenerateInvalidData() []byte
- func GenerateLargeTraceData(count int) ([]byte, error)
- func GenerateValidLogsData() ([]byte, error)
- func GenerateValidMetricsData() ([]byte, error)
- func GenerateValidTraceData() ([]byte, error)
- type Pool
- type TelemetryWriter
- type WorkItem
- type WorkItemType
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GenerateEmptyTraceData ¶ added in v0.1.2
GenerateEmptyTraceData generates an empty trace export request
func GenerateInvalidData ¶ added in v0.1.2
func GenerateInvalidData() []byte
GenerateInvalidData generates invalid protobuf data for error testing
func GenerateLargeTraceData ¶ added in v0.1.2
GenerateLargeTraceData generates a large OTLP trace payload for stress testing
func GenerateValidLogsData ¶ added in v0.1.2
GenerateValidLogsData generates valid OTLP logs protobuf bytes
func GenerateValidMetricsData ¶ added in v0.1.2
GenerateValidMetricsData generates valid OTLP metrics protobuf bytes with sum, gauge, and histogram
func GenerateValidTraceData ¶ added in v0.1.2
GenerateValidTraceData generates valid OTLP trace protobuf bytes
Types ¶
type Pool ¶
type Pool struct {
// contains filtered or unexported fields
}
Pool represents a worker pool
func NewPool ¶
func NewPool(queueSize, workerCount int, submitTimeout time.Duration, writer TelemetryWriter, agentService services.AgentService, logger *zap.Logger) *Pool
NewPool creates a new worker pool with configurable workers
func (*Pool) QueueDepth ¶
QueueDepth returns the current queue depth
type TelemetryWriter ¶
type TelemetryWriter interface {
WriteTraces(ctx context.Context, traces []otlp.TraceData) error
WriteMetrics(ctx context.Context, sums []otlp.MetricSumData, gauges []otlp.MetricGaugeData, histograms []otlp.MetricHistogramData) error
WriteLogs(ctx context.Context, logs []otlp.LogData) error
}
TelemetryWriter defines the interface for writing telemetry data
type WorkItem ¶
type WorkItem struct {
Type WorkItemType
RawData []byte // Raw protobuf bytes
Timestamp time.Time
}
WorkItem represents a single unit of work with raw OTLP bytes
type WorkItemType ¶
type WorkItemType int
WorkItemType represents the type of work item
const ( WorkItemTypeTraces WorkItemType = iota WorkItemTypeMetrics WorkItemTypeLogs )