Documentation ¶
Index ¶
- Constants
- func NewBatchSpanProcessor(exporter trace.SpanExporter, options ...BatchSpanProcessorOption) *batchSpanProcessor
- func NewSimpleSpanProcessor(exporter trace.SpanExporter) *simpleSpanProcessor
- type BatchSpanProcessorOption
- func WithBatchTimeout(delay time.Duration) BatchSpanProcessorOption
- func WithBlocking() BatchSpanProcessorOption
- func WithExportTimeout(timeout time.Duration) BatchSpanProcessorOption
- func WithMaxExportBatchSize(size int) BatchSpanProcessorOption
- func WithMaxQueueSize(size int) BatchSpanProcessorOption
- type BatchSpanProcessorOptions
- type ProxyTraceProvider
- type ProxyTracer
- type TracerUpdater
Constants ¶
const ( DefaultMaxQueueSize = 2048 DefaultScheduleDelay = 5000 DefaultExportTimeout = 30000 DefaultMaxExportBatchSize = 512 )
Defaults for BatchSpanProcessorOptions.
Variables ¶
This section is empty.
Functions ¶
func NewBatchSpanProcessor ¶
func NewBatchSpanProcessor(exporter trace.SpanExporter, options ...BatchSpanProcessorOption) *batchSpanProcessor
NewBatchSpanProcessor creates a new SpanProcessor that will send completed span batches to the exporter with the supplied options.
If the exporter is nil, the span processor will perform no action.
func NewSimpleSpanProcessor ¶
func NewSimpleSpanProcessor(exporter trace.SpanExporter) *simpleSpanProcessor
NewSimpleSpanProcessor returns a new SpanProcessor that will synchronously send completed spans to the exporter immediately.
This SpanProcessor is not recommended for production use. The synchronous nature of this SpanProcessor make it good for testing, debugging, or showing examples of other feature, but it will be slow and have a high computation resource usage overhead. The BatchSpanProcessor is recommended for production use instead.
Types ¶
type BatchSpanProcessorOption ¶
type BatchSpanProcessorOption func(o *BatchSpanProcessorOptions)
BatchSpanProcessorOption configures a BatchSpanProcessor.
func WithBatchTimeout ¶
func WithBatchTimeout(delay time.Duration) BatchSpanProcessorOption
WithBatchTimeout returns a BatchSpanProcessorOption that configures the maximum delay allowed for a BatchSpanProcessor before it will export any held span (whether the queue is full or not).
func WithBlocking ¶
func WithBlocking() BatchSpanProcessorOption
WithBlocking returns a BatchSpanProcessorOption that configures a BatchSpanProcessor to wait for enqueue operations to succeed instead of dropping data when the queue is full.
func WithExportTimeout ¶
func WithExportTimeout(timeout time.Duration) BatchSpanProcessorOption
WithExportTimeout returns a BatchSpanProcessorOption that configures the amount of time a BatchSpanProcessor waits for an exporter to export before abandoning the export.
func WithMaxExportBatchSize ¶
func WithMaxExportBatchSize(size int) BatchSpanProcessorOption
WithMaxExportBatchSize returns a BatchSpanProcessorOption that configures the maximum export batch size allowed for a BatchSpanProcessor.
func WithMaxQueueSize ¶
func WithMaxQueueSize(size int) BatchSpanProcessorOption
WithMaxQueueSize returns a BatchSpanProcessorOption that configures the maximum queue size allowed for a BatchSpanProcessor.
type BatchSpanProcessorOptions ¶
type BatchSpanProcessorOptions struct { // MaxQueueSize is the maximum queue size to buffer spans for delayed processing. If the // queue gets full it drops the spans. Use BlockOnQueueFull to change this behavior. // The default value of MaxQueueSize is 2048. MaxQueueSize int // BatchTimeout is the maximum duration for constructing a batch. Processor // forcefully sends available spans when timeout is reached. // The default value of BatchTimeout is 5000 msec. BatchTimeout time.Duration // ExportTimeout specifies the maximum duration for exporting spans. If the timeout // is reached, the export will be cancelled. // The default value of ExportTimeout is 30000 msec. ExportTimeout time.Duration // MaxExportBatchSize is the maximum number of spans to process in a single batch. // If there are more than one batch worth of spans then it processes multiple batches // of spans one batch after the other without any delay. // The default value of MaxExportBatchSize is 512. MaxExportBatchSize int // BlockOnQueueFull blocks onEnd() and onStart() method if the queue is full // AND if BlockOnQueueFull is set to true. // Blocking option should be used carefully as it can severely affect the performance of an // application. BlockOnQueueFull bool }
BatchSpanProcessorOptions is configuration settings for a BatchSpanProcessor.
type ProxyTraceProvider ¶
type ProxyTraceProvider struct { embedded.TracerProvider // contains filtered or unexported fields }
func NewProxyTraceProvider ¶
func NewProxyTraceProvider(tp *tracesdk.TracerProvider, onUpdate func(trace.Span)) *ProxyTraceProvider
func (*ProxyTraceProvider) ForceFlush ¶
func (tp *ProxyTraceProvider) ForceFlush(ctx context.Context) error
func (*ProxyTraceProvider) Shutdown ¶
func (tp *ProxyTraceProvider) Shutdown(ctx context.Context) error
func (*ProxyTraceProvider) Tracer ¶
func (tp *ProxyTraceProvider) Tracer(name string, options ...trace.TracerOption) trace.Tracer
type ProxyTracer ¶
type TracerUpdater ¶
type TracerUpdater interface {
// contains filtered or unexported methods
}