Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Aggregator ¶
type Aggregator interface { // Close() from io.Closer stops the aggregator from aggregating throughput. io.Closer // The HandleRootSpan function processes a span, checking if it's a root span. // If it is, it extracts sampler parameters, then calls RecordThroughput. HandleRootSpan(span *model.Span, logger *zap.Logger) // RecordThroughput records throughput for an operation for aggregation. RecordThroughput(service, operation string, samplerType model.SamplerType, probability float64) // Start starts aggregating operation throughput. Start() }
Aggregator defines an interface used to aggregate operation throughput.
type Factory ¶
type Factory interface { // Initialize performs internal initialization of the factory. Initialize(metricsFactory metrics.Factory, ssFactory storage.SamplingStoreFactory, logger *zap.Logger) error // CreateStrategyProvider initializes and returns Provider and optionallty Aggregator. CreateStrategyProvider() (Provider, Aggregator, error) // Close closes the factory Close() error }
Factory defines an interface for a factory that can create implementations of different sampling strategy components. Implementations are also encouraged to implement plugin.Configurable interface.
See also ¶
plugin.Configurable
type Provider ¶
type Provider interface { // Close() from io.Closer stops the processor from calculating probabilities. io.Closer // GetSamplingStrategy retrieves the sampling strategy for the specified service. GetSamplingStrategy(ctx context.Context, serviceName string) (*api_v2.SamplingStrategyResponse, error) }
Provider keeps track of service specific sampling strategies.
Click to show internal directories.
Click to hide internal directories.