diff --git a/internal/internal_poller_autoscaler.go b/internal/internal_poller_autoscaler.go index 6fbd4ccbc..d88dd1f10 100644 --- a/internal/internal_poller_autoscaler.go +++ b/internal/internal_poller_autoscaler.go @@ -83,11 +83,10 @@ func newPollerScaler( options pollerAutoScalerOptions, logger *zap.Logger, hooks ...func()) *pollerAutoScaler { - ctx, cancel := context.WithCancel(context.Background()) if !options.Enabled { return nil } - + ctx, cancel := context.WithCancel(context.Background()) return &pollerAutoScaler{ isDryRun: options.DryRun, cooldownTime: options.Cooldown, diff --git a/internal/internal_task_handlers.go b/internal/internal_task_handlers.go index 0aa13f085..0dd3ba69c 100644 --- a/internal/internal_task_handlers.go +++ b/internal/internal_task_handlers.go @@ -1406,6 +1406,12 @@ func newActivityTaskHandlerWithCustomProvider( registry *registry, activityProvider activityProvider, ) ActivityTaskHandler { + if params.Tracer == nil { + params.Tracer = opentracing.NoopTracer{} + } + if params.WorkerStats.ActivityTracker == nil { + params.WorkerStats.ActivityTracker = debug.NewNoopActivityTracker() + } return &activityTaskHandlerImpl{ taskListName: params.TaskList, identity: params.Identity, diff --git a/internal/internal_task_handlers_test.go b/internal/internal_task_handlers_test.go index 07da0ccb7..82440c7dd 100644 --- a/internal/internal_task_handlers_test.go +++ b/internal/internal_task_handlers_test.go @@ -1248,7 +1248,6 @@ func (t *TaskHandlersTestSuite) TestLocalActivityRetry_DecisionHeartbeatFail() { WorkerOptions: WorkerOptions{ Identity: "test-id-1", Logger: t.logger, - Tracer: opentracing.NoopTracer{}, }, WorkerStopChannel: stopCh, } diff --git a/internal/internal_task_pollers.go b/internal/internal_task_pollers.go index 23aa85a31..c565a5833 100644 --- a/internal/internal_task_pollers.go +++ b/internal/internal_task_pollers.go @@ -525,6 +525,12 @@ func (wtp *workflowTaskPoller) RespondTaskCompleted(completedRequest interface{} } func newLocalActivityPoller(params workerExecutionParameters, laTunnel *localActivityTunnel) *localActivityTaskPoller { + if params.Tracer == nil { + params.Tracer = opentracing.NoopTracer{} + } + if params.WorkerStats.ActivityTracker == nil { + params.WorkerStats.ActivityTracker = debug.NewNoopActivityTracker() + } handler := &localActivityTaskHandler{ userContext: params.UserContext, metricsScope: metrics.NewTaggedScope(params.MetricsScope), diff --git a/internal/internal_worker.go b/internal/internal_worker.go index e765e3515..07331b761 100644 --- a/internal/internal_worker.go +++ b/internal/internal_worker.go @@ -165,6 +165,9 @@ func newWorkflowWorker( } func ensureRequiredParams(params *workerExecutionParameters) { + if params.Tracer == nil { + params.Tracer = opentracing.NoopTracer{} + } if params.Identity == "" { params.Identity = getWorkerIdentity(params.TaskList) } diff --git a/internal/internal_worker_interfaces_test.go b/internal/internal_worker_interfaces_test.go index 827abe0e0..99e444a70 100644 --- a/internal/internal_worker_interfaces_test.go +++ b/internal/internal_worker_interfaces_test.go @@ -28,7 +28,6 @@ import ( "time" "github.com/golang/mock/gomock" - "github.com/opentracing/opentracing-go" "github.com/stretchr/testify/suite" "go.uber.org/zap/zaptest" @@ -184,7 +183,7 @@ func (s *InterfacesTestSuite) TestInterface() { MaxConcurrentActivityTaskPollers: 4, MaxConcurrentDecisionTaskPollers: 4, Logger: zaptest.NewLogger(s.T()), - Tracer: opentracing.NoopTracer{}}, + }, } domainStatus := m.DomainStatusRegistered @@ -216,7 +215,7 @@ func (s *InterfacesTestSuite) TestInterface() { MaxConcurrentActivityTaskPollers: 10, MaxConcurrentDecisionTaskPollers: 10, Logger: zaptest.NewLogger(s.T()), - Tracer: opentracing.NoopTracer{}}, + }, } // Register activity instances and launch the worker. diff --git a/internal/internal_worker_test.go b/internal/internal_worker_test.go index 65792bb45..49981b36c 100644 --- a/internal/internal_worker_test.go +++ b/internal/internal_worker_test.go @@ -274,6 +274,7 @@ func (s *internalWorkerTestSuite) TestNoActivitiesOrWorkflows() { assert.Empty(t, w.registry.getRegisteredActivities()) assert.Empty(t, w.registry.GetRegisteredWorkflowTypes()) assert.NoError(t, w.Start()) + w.Stop() } func (s *internalWorkerTestSuite) TestWorkerStartFailsWithInvalidDomain() { @@ -1141,8 +1142,8 @@ func TestWorkerOptionNonDefaults(t *testing.T) { DataConverter: &defaultDataConverter{}, BackgroundActivityContext: context.Background(), Logger: zap.NewNop(), - MetricsScope: tally.NoopScope, - Tracer: opentracing.NoopTracer{}, + MetricsScope: tally.NewTestScope("", nil), + Tracer: opentracing.GlobalTracer(), } aggWorker, err := newAggregatedWorker(nil, domain, taskList, options) diff --git a/internal/worker_test.go b/internal/worker_test.go index 950955efa..6f3783617 100644 --- a/internal/worker_test.go +++ b/internal/worker_test.go @@ -26,6 +26,11 @@ import ( "github.com/stretchr/testify/assert" ) +func TestMain(m *testing.M) { + EnableVerboseLogging(true) + m.Run() +} + func Test_NewWorker(t *testing.T) { tests := []struct { name string