Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[refactor] Move sampling strategy interfaces to internal/sampling/strategy #6547

Merged
merged 3 commits into from
Jan 15, 2025
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions cmd/collector/app/collector.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,9 @@ import (
"github.com/jaegertracing/jaeger/cmd/collector/app/flags"
"github.com/jaegertracing/jaeger/cmd/collector/app/handler"
"github.com/jaegertracing/jaeger/cmd/collector/app/processor"
"github.com/jaegertracing/jaeger/cmd/collector/app/sampling/samplingstrategy"
"github.com/jaegertracing/jaeger/cmd/collector/app/server"
"github.com/jaegertracing/jaeger/internal/safeexpvar"
"github.com/jaegertracing/jaeger/internal/sampling/strategy"
"github.com/jaegertracing/jaeger/model"
"github.com/jaegertracing/jaeger/pkg/healthcheck"
"github.com/jaegertracing/jaeger/pkg/metrics"
Expand All @@ -38,8 +38,8 @@ type Collector struct {
logger *zap.Logger
metricsFactory metrics.Factory
traceWriter tracestore.Writer
samplingProvider samplingstrategy.Provider
samplingAggregator samplingstrategy.Aggregator
samplingProvider strategy.Provider
samplingAggregator strategy.Aggregator
hCheck *healthcheck.HealthCheck
spanProcessor processor.SpanProcessor
spanHandlers *SpanHandlers
Expand All @@ -58,8 +58,8 @@ type CollectorParams struct {
Logger *zap.Logger
MetricsFactory metrics.Factory
TraceWriter tracestore.Writer
SamplingProvider samplingstrategy.Provider
SamplingAggregator samplingstrategy.Aggregator
SamplingProvider strategy.Provider
SamplingAggregator strategy.Aggregator
HealthCheck *healthcheck.HealthCheck
TenancyMgr *tenancy.Manager
}
Expand Down
4 changes: 2 additions & 2 deletions cmd/collector/app/server/grpc.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@ import (
"google.golang.org/grpc/reflection"

"github.com/jaegertracing/jaeger/cmd/collector/app/handler"
"github.com/jaegertracing/jaeger/cmd/collector/app/sampling/samplingstrategy"
samplinggrpc "github.com/jaegertracing/jaeger/internal/sampling/grpc"
"github.com/jaegertracing/jaeger/internal/sampling/strategy"
"github.com/jaegertracing/jaeger/pkg/telemetry"
"github.com/jaegertracing/jaeger/proto-gen/api_v2"
)
Expand All @@ -27,7 +27,7 @@ import (
type GRPCServerParams struct {
configgrpc.ServerConfig
Handler *handler.GRPCHandler
SamplingProvider samplingstrategy.Provider
SamplingProvider strategy.Provider
Logger *zap.Logger
OnError func(error)

Expand Down
4 changes: 2 additions & 2 deletions cmd/collector/app/server/http.go
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ import (
"go.uber.org/zap/zapcore"

"github.com/jaegertracing/jaeger/cmd/collector/app/handler"
"github.com/jaegertracing/jaeger/cmd/collector/app/sampling/samplingstrategy"
samplinghttp "github.com/jaegertracing/jaeger/internal/sampling/http"
"github.com/jaegertracing/jaeger/internal/sampling/strategy"
"github.com/jaegertracing/jaeger/pkg/healthcheck"
"github.com/jaegertracing/jaeger/pkg/httpmetrics"
"github.com/jaegertracing/jaeger/pkg/metrics"
Expand All @@ -27,7 +27,7 @@ import (
type HTTPServerParams struct {
confighttp.ServerConfig
Handler handler.JaegerBatchesHandler
SamplingProvider samplingstrategy.Provider
SamplingProvider strategy.Provider
MetricsFactory metrics.Factory
HealthCheck *healthcheck.HealthCheck
Logger *zap.Logger
Expand Down
4 changes: 2 additions & 2 deletions cmd/jaeger/internal/extension/remotesampling/extension.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,12 @@ import (
"google.golang.org/grpc/health"
"google.golang.org/grpc/health/grpc_health_v1"

"github.com/jaegertracing/jaeger/cmd/collector/app/sampling/samplingstrategy"
"github.com/jaegertracing/jaeger/cmd/jaeger/internal/extension/jaegerstorage"
"github.com/jaegertracing/jaeger/internal/leaderelection"
"github.com/jaegertracing/jaeger/internal/metrics/otelmetrics"
samplinggrpc "github.com/jaegertracing/jaeger/internal/sampling/grpc"
samplinghttp "github.com/jaegertracing/jaeger/internal/sampling/http"
"github.com/jaegertracing/jaeger/internal/sampling/strategy"
"github.com/jaegertracing/jaeger/pkg/metrics"
"github.com/jaegertracing/jaeger/plugin/sampling/strategyprovider/adaptive"
"github.com/jaegertracing/jaeger/plugin/sampling/strategyprovider/static"
Expand All @@ -47,7 +47,7 @@ type rsExtension struct {
telemetry component.TelemetrySettings
httpServer *http.Server
grpcServer *grpc.Server
strategyProvider samplingstrategy.Provider // TODO we should rename this to Provider, not "store"
strategyProvider strategy.Provider // TODO we should rename this to Provider, not "store"
adaptiveStore samplingstore.Store
distLock *leaderelection.DistributedElectionParticipant
shutdownWG sync.WaitGroup
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,16 +10,16 @@ import (
"go.opentelemetry.io/collector/component"
"go.opentelemetry.io/collector/pdata/ptrace"

"github.com/jaegertracing/jaeger/cmd/collector/app/sampling/samplingstrategy"
"github.com/jaegertracing/jaeger/cmd/jaeger/internal/extension/remotesampling"
"github.com/jaegertracing/jaeger/internal/metrics/otelmetrics"
"github.com/jaegertracing/jaeger/internal/sampling/strategy"
"github.com/jaegertracing/jaeger/plugin/sampling/strategyprovider/adaptive"
"github.com/jaegertracing/jaeger/storage_v2/v1adapter"
)

type traceProcessor struct {
config *Config
aggregator samplingstrategy.Aggregator
aggregator strategy.Aggregator
telset component.TelemetrySettings
}

Expand Down
6 changes: 3 additions & 3 deletions internal/sampling/grpc/grpc_handler.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,17 @@ package grpc
import (
"context"

"github.com/jaegertracing/jaeger/cmd/collector/app/sampling/samplingstrategy"
"github.com/jaegertracing/jaeger/internal/sampling/strategy"
"github.com/jaegertracing/jaeger/proto-gen/api_v2"
)

// Handler is sampling strategy handler for gRPC.
type Handler struct {
samplingProvider samplingstrategy.Provider
samplingProvider strategy.Provider
}

// NewHandler creates a handler that controls sampling strategies for services.
func NewHandler(provider samplingstrategy.Provider) Handler {
func NewHandler(provider strategy.Provider) Handler {
return Handler{
samplingProvider: provider,
}
Expand Down
4 changes: 2 additions & 2 deletions internal/sampling/http/cfgmgr.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@ package http
import (
"context"

"github.com/jaegertracing/jaeger/cmd/collector/app/sampling/samplingstrategy"
"github.com/jaegertracing/jaeger/internal/sampling/strategy"
"github.com/jaegertracing/jaeger/proto-gen/api_v2"
)

// ConfigManager implements ClientConfigManager.
type ConfigManager struct {
SamplingProvider samplingstrategy.Provider
SamplingProvider strategy.Provider
}

// GetSamplingStrategy implements ClientConfigManager.GetSamplingStrategy.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Copyright (c) 2019 The Jaeger Authors.
// SPDX-License-Identifier: Apache-2.0

package samplingstrategy
package strategy

import (
"testing"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Copyright (c) 2018 The Jaeger Authors.
// SPDX-License-Identifier: Apache-2.0

package samplingstrategy
package strategy

import (
"go.uber.org/zap"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Copyright (c) 2018 The Jaeger Authors.
// SPDX-License-Identifier: Apache-2.0

package samplingstrategy
package strategy

import (
"context"
Expand Down
4 changes: 2 additions & 2 deletions plugin/sampling/strategyprovider/adaptive/aggregator.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ import (

"go.uber.org/zap"

"github.com/jaegertracing/jaeger/cmd/collector/app/sampling/samplingstrategy"
"github.com/jaegertracing/jaeger/internal/leaderelection"
"github.com/jaegertracing/jaeger/internal/sampling/strategy"
span_model "github.com/jaegertracing/jaeger/model"
"github.com/jaegertracing/jaeger/pkg/hostname"
"github.com/jaegertracing/jaeger/pkg/metrics"
Expand Down Expand Up @@ -43,7 +43,7 @@ type aggregator struct {

// NewAggregator creates a throughput aggregator that simply emits metrics
// about the number of operations seen over the aggregationInterval.
func NewAggregator(options Options, logger *zap.Logger, metricsFactory metrics.Factory, participant leaderelection.ElectionParticipant, store samplingstore.Store) (samplingstrategy.Aggregator, error) {
func NewAggregator(options Options, logger *zap.Logger, metricsFactory metrics.Factory, participant leaderelection.ElectionParticipant, store samplingstore.Store) (strategy.Aggregator, error) {
hostId, err := hostname.AsIdentifier()
if err != nil {
return nil, err
Expand Down
8 changes: 4 additions & 4 deletions plugin/sampling/strategyprovider/adaptive/factory.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ import (
"github.com/spf13/viper"
"go.uber.org/zap"

"github.com/jaegertracing/jaeger/cmd/collector/app/sampling/samplingstrategy"
"github.com/jaegertracing/jaeger/internal/leaderelection"
"github.com/jaegertracing/jaeger/internal/sampling/strategy"
"github.com/jaegertracing/jaeger/pkg/distributedlock"
"github.com/jaegertracing/jaeger/pkg/metrics"
"github.com/jaegertracing/jaeger/plugin"
Expand All @@ -20,8 +20,8 @@ import (
)

var (
_ plugin.Configurable = (*Factory)(nil)
_ samplingstrategy.Factory = (*Factory)(nil)
_ plugin.Configurable = (*Factory)(nil)
_ strategy.Factory = (*Factory)(nil)
)

// Factory implements samplingstrategy.Factory for an adaptive strategy store.
Expand Down Expand Up @@ -81,7 +81,7 @@ func (f *Factory) Initialize(metricsFactory metrics.Factory, ssFactory storage.S
}

// CreateStrategyProvider implements samplingstrategy.Factory
func (f *Factory) CreateStrategyProvider() (samplingstrategy.Provider, samplingstrategy.Aggregator, error) {
func (f *Factory) CreateStrategyProvider() (strategy.Provider, strategy.Aggregator, error) {
s := NewProvider(*f.options, f.logger, f.participant, f.store)
a, err := NewAggregator(*f.options, f.logger, f.metricsFactory, f.participant, f.store)
if err != nil {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ import (
"github.com/stretchr/testify/require"
"go.uber.org/zap"

ss "github.com/jaegertracing/jaeger/cmd/collector/app/sampling/samplingstrategy"
ss "github.com/jaegertracing/jaeger/internal/sampling/strategy"
"github.com/jaegertracing/jaeger/pkg/config"
"github.com/jaegertracing/jaeger/pkg/distributedlock"
lmocks "github.com/jaegertracing/jaeger/pkg/distributedlock/mocks"
Expand Down
14 changes: 7 additions & 7 deletions plugin/sampling/strategyprovider/factory.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import (
"github.com/spf13/viper"
"go.uber.org/zap"

"github.com/jaegertracing/jaeger/cmd/collector/app/sampling/samplingstrategy"
"github.com/jaegertracing/jaeger/internal/sampling/strategy"
"github.com/jaegertracing/jaeger/pkg/metrics"
"github.com/jaegertracing/jaeger/plugin"
"github.com/jaegertracing/jaeger/plugin/sampling/strategyprovider/adaptive"
Expand All @@ -31,15 +31,15 @@ const (
var AllSamplingTypes = []string{samplingTypeFile, samplingTypeAdaptive}

var (
_ plugin.Configurable = (*Factory)(nil)
_ samplingstrategy.Factory = (*Factory)(nil)
_ plugin.Configurable = (*Factory)(nil)
_ strategy.Factory = (*Factory)(nil)
)

// Factory implements samplingstrategy.Factory interface as a meta-factory for strategy storage components.
type Factory struct {
FactoryConfig

factories map[Kind]samplingstrategy.Factory
factories map[Kind]strategy.Factory
}

// NewFactory creates the meta-factory.
Expand All @@ -48,7 +48,7 @@ func NewFactory(config FactoryConfig) (*Factory, error) {
uniqueTypes := map[Kind]struct{}{
f.StrategyStoreType: {},
}
f.factories = make(map[Kind]samplingstrategy.Factory)
f.factories = make(map[Kind]strategy.Factory)
for t := range uniqueTypes {
ff, err := f.getFactoryOfType(t)
if err != nil {
Expand All @@ -59,7 +59,7 @@ func NewFactory(config FactoryConfig) (*Factory, error) {
return f, nil
}

func (*Factory) getFactoryOfType(factoryType Kind) (samplingstrategy.Factory, error) {
func (*Factory) getFactoryOfType(factoryType Kind) (strategy.Factory, error) {
switch factoryType {
case samplingTypeFile:
return static.NewFactory(), nil
Expand Down Expand Up @@ -99,7 +99,7 @@ func (f *Factory) Initialize(metricsFactory metrics.Factory, ssFactory storage.S
}

// CreateStrategyProvider implements samplingstrategy.Factory
func (f *Factory) CreateStrategyProvider() (samplingstrategy.Provider, samplingstrategy.Aggregator, error) {
func (f *Factory) CreateStrategyProvider() (strategy.Provider, strategy.Aggregator, error) {
factory, ok := f.factories[f.StrategyStoreType]
if !ok {
return nil, nil, fmt.Errorf("no %s strategy store registered", f.StrategyStoreType)
Expand Down
2 changes: 1 addition & 1 deletion plugin/sampling/strategyprovider/factory_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import (
"github.com/stretchr/testify/require"
"go.uber.org/zap"

ss "github.com/jaegertracing/jaeger/cmd/collector/app/sampling/samplingstrategy"
ss "github.com/jaegertracing/jaeger/internal/sampling/strategy"
"github.com/jaegertracing/jaeger/pkg/distributedlock"
"github.com/jaegertracing/jaeger/pkg/metrics"
"github.com/jaegertracing/jaeger/plugin"
Expand Down
4 changes: 2 additions & 2 deletions plugin/sampling/strategyprovider/static/factory.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import (
"github.com/spf13/viper"
"go.uber.org/zap"

"github.com/jaegertracing/jaeger/cmd/collector/app/sampling/samplingstrategy"
ss "github.com/jaegertracing/jaeger/internal/sampling/strategy"
"github.com/jaegertracing/jaeger/pkg/metrics"
"github.com/jaegertracing/jaeger/plugin"
"github.com/jaegertracing/jaeger/storage"
Expand Down Expand Up @@ -48,7 +48,7 @@ func (f *Factory) Initialize(_ metrics.Factory, _ storage.SamplingStoreFactory,
}

// CreateStrategyProvider implements samplingstrategy.Factory
func (f *Factory) CreateStrategyProvider() (samplingstrategy.Provider, samplingstrategy.Aggregator, error) {
func (f *Factory) CreateStrategyProvider() (ss.Provider, ss.Aggregator, error) {
s, err := NewProvider(*f.options, f.logger)
if err != nil {
return nil, nil, err
Expand Down
2 changes: 1 addition & 1 deletion plugin/sampling/strategyprovider/static/factory_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import (
"github.com/stretchr/testify/require"
"go.uber.org/zap"

ss "github.com/jaegertracing/jaeger/cmd/collector/app/sampling/samplingstrategy"
ss "github.com/jaegertracing/jaeger/internal/sampling/strategy"
"github.com/jaegertracing/jaeger/pkg/config"
"github.com/jaegertracing/jaeger/pkg/metrics"
"github.com/jaegertracing/jaeger/plugin"
Expand Down
2 changes: 1 addition & 1 deletion plugin/sampling/strategyprovider/static/provider.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ import (

"go.uber.org/zap"

ss "github.com/jaegertracing/jaeger/cmd/collector/app/sampling/samplingstrategy"
ss "github.com/jaegertracing/jaeger/internal/sampling/strategy"
"github.com/jaegertracing/jaeger/proto-gen/api_v2"
)

Expand Down
Loading