diff --git a/exporter/prometheus/example/main.go b/exporter/prometheus/example/main.go index 4f599c9cb..e19c7da25 100644 --- a/exporter/prometheus/example/main.go +++ b/exporter/prometheus/example/main.go @@ -48,7 +48,7 @@ func main() { // Create view to see the amount of video processed // Subscribe will allow view data to be exported. // Once no longer needed, you can unsubscribe from the view. - if err = view.Subscribe( + if err = view.Register( &view.View{ Name: "video_count", Description: "number of videos processed over time", diff --git a/exporter/stackdriver/example_test.go b/exporter/stackdriver/example_test.go index 6298a32ad..e1105009f 100644 --- a/exporter/stackdriver/example_test.go +++ b/exporter/stackdriver/example_test.go @@ -35,7 +35,7 @@ func Example() { view.RegisterExporter(exporter) // Subscribe views to see stats in Stackdriver Monitoring. - if err := view.Subscribe( + if err := view.Register( ochttp.ClientLatencyView, ochttp.ClientResponseBytesView, ); err != nil { diff --git a/exporter/stackdriver/examples/stats/main.go b/exporter/stackdriver/examples/stats/main.go index 894d71329..ec30d3e73 100644 --- a/exporter/stackdriver/examples/stats/main.go +++ b/exporter/stackdriver/examples/stats/main.go @@ -59,7 +59,7 @@ func main() { // Create view to see the processed video size cumulatively. // Subscribe will allow view data to be exported. // Once no longer need, you can unsubscribe from the view. - if err := view.Subscribe(&view.View{ + if err := view.Register(&view.View{ Name: "my.org/views/video_size_cum", Description: "processed video size over time", Measure: videoSize, diff --git a/exporter/stackdriver/stats_test.go b/exporter/stackdriver/stats_test.go index 5c286b707..0e5bc2f54 100644 --- a/exporter/stackdriver/stats_test.go +++ b/exporter/stackdriver/stats_test.go @@ -677,10 +677,10 @@ func TestExporter_makeReq_withCustomMonitoredResource(t *testing.T) { Measure: m, Aggregation: view.Count(), } - if err := view.Subscribe(v); err != nil { + if err := view.Register(v); err != nil { t.Fatal(err) } - defer view.Unsubscribe(v) + defer view.Unregister(v) start := time.Now() end := start.Add(time.Minute) diff --git a/internal/readme/stats.go b/internal/readme/stats.go index ad203b491..cc42eeb97 100644 --- a/internal/readme/stats.go +++ b/internal/readme/stats.go @@ -40,7 +40,7 @@ func statsExamples() { _, _, _ = distAgg, countAgg, sumAgg // START view - if err := view.Subscribe(&view.View{ + if err := view.Register(&view.View{ Name: "my.org/video_size_distribution", Description: "distribution of processed video size over time", Measure: videoSize, diff --git a/plugin/ocgrpc/client_stats_handler_test.go b/plugin/ocgrpc/client_stats_handler_test.go index a8c4ba5b0..9b06f2061 100644 --- a/plugin/ocgrpc/client_stats_handler_test.go +++ b/plugin/ocgrpc/client_stats_handler_test.go @@ -299,7 +299,7 @@ func TestClientDefaultCollections(t *testing.T) { for _, tc := range tcs { // Register views. - if err := view.Subscribe(DefaultClientViews...); err != nil { + if err := view.Register(DefaultClientViews...); err != nil { t.Error(err) } @@ -349,7 +349,7 @@ func TestClientDefaultCollections(t *testing.T) { } // Unregister views to cleanup. - view.Unsubscribe(DefaultClientViews...) + view.Unregister(DefaultClientViews...) } } diff --git a/plugin/ocgrpc/example_test.go b/plugin/ocgrpc/example_test.go index cb9f9a6d7..a8d5759d5 100644 --- a/plugin/ocgrpc/example_test.go +++ b/plugin/ocgrpc/example_test.go @@ -24,7 +24,7 @@ import ( func ExampleClientHandler() { // Subscribe views to collect data. - if err := view.Subscribe(ocgrpc.DefaultClientViews...); err != nil { + if err := view.Register(ocgrpc.DefaultClientViews...); err != nil { log.Fatal(err) } @@ -39,7 +39,7 @@ func ExampleClientHandler() { func ExampleServerHandler() { // Subscribe to views to collect data. - if err := view.Subscribe(ocgrpc.DefaultServerViews...); err != nil { + if err := view.Register(ocgrpc.DefaultServerViews...); err != nil { log.Fatal(err) } diff --git a/plugin/ocgrpc/grpc_test.go b/plugin/ocgrpc/grpc_test.go index dbbfd7f16..195c2eb66 100644 --- a/plugin/ocgrpc/grpc_test.go +++ b/plugin/ocgrpc/grpc_test.go @@ -31,7 +31,7 @@ func TestClientHandler(t *testing.T) { ctx := context.Background() te := &traceExporter{} trace.RegisterExporter(te) - if err := ClientRequestCountView.Subscribe(); err != nil { + if err := view.Register(ClientRequestCountView); err != nil { t.Fatal(err) } @@ -67,7 +67,7 @@ func TestClientHandler(t *testing.T) { } // Cleanup. - view.Unsubscribe(ClientErrorCountView) + view.Unregister(ClientErrorCountView) } func TestServerHandler(t *testing.T) { @@ -94,7 +94,7 @@ func TestServerHandler(t *testing.T) { te := &traceExporter{} trace.RegisterExporter(te) - if err := ServerRequestCountView.Subscribe(); err != nil { + if err := view.Register(ServerRequestCountView); err != nil { t.Fatal(err) } @@ -126,7 +126,7 @@ func TestServerHandler(t *testing.T) { } // Cleanup. - view.Unsubscribe(ServerRequestCountView) + view.Unregister(ServerRequestCountView) }) } } diff --git a/plugin/ocgrpc/server_stats_handler_test.go b/plugin/ocgrpc/server_stats_handler_test.go index e3c212ac4..c707cc0e0 100644 --- a/plugin/ocgrpc/server_stats_handler_test.go +++ b/plugin/ocgrpc/server_stats_handler_test.go @@ -298,7 +298,7 @@ func TestServerDefaultCollections(t *testing.T) { } for _, tc := range tcs { - if err := view.Subscribe(DefaultServerViews...); err != nil { + if err := view.Register(DefaultServerViews...); err != nil { t.Fatal(err) } @@ -349,7 +349,7 @@ func TestServerDefaultCollections(t *testing.T) { } // Unregister views to cleanup. - view.Unsubscribe(DefaultServerViews...) + view.Unregister(DefaultServerViews...) } } diff --git a/plugin/ochttp/client_test.go b/plugin/ochttp/client_test.go index fa22e0012..5bed75f34 100644 --- a/plugin/ochttp/client_test.go +++ b/plugin/ochttp/client_test.go @@ -36,8 +36,8 @@ func TestClient(t *testing.T) { })) defer server.Close() - for _, v := range ochttp.DefaultClientViews { - v.Subscribe() + if err := view.Register(ochttp.DefaultClientViews...); err != nil { + t.Fatalf("Failed to register ochttp.DefaultClientViews error: %v", err) } views := []string{ @@ -54,15 +54,14 @@ func TestClient(t *testing.T) { } } - var ( - w sync.WaitGroup - tr ochttp.Transport - errs = make(chan error, reqCount) - ) - w.Add(reqCount) + var wg sync.WaitGroup + var tr ochttp.Transport + errs := make(chan error, reqCount) + wg.Add(reqCount) + for i := 0; i < reqCount; i++ { go func() { - defer w.Done() + defer wg.Done() req, err := http.NewRequest("POST", server.URL, strings.NewReader("req-body")) if err != nil { errs <- fmt.Errorf("error creating request: %v", err) @@ -81,7 +80,7 @@ func TestClient(t *testing.T) { } go func() { - w.Wait() + wg.Wait() close(errs) }() diff --git a/plugin/ochttp/example_test.go b/plugin/ochttp/example_test.go index a92cf02c0..7a0c452ce 100644 --- a/plugin/ochttp/example_test.go +++ b/plugin/ochttp/example_test.go @@ -25,13 +25,13 @@ import ( ) func ExampleTransport() { - if err := view.Subscribe( - // Subscribe to a few default views. + if err := view.Register( + // Register to a few default views. ochttp.ClientRequestCountByMethod, ochttp.ClientResponseCountByStatusCode, ochttp.ClientLatencyView, - // Subscribe to a custom view. + // Register to a custom view. &view.View{ Name: "httpclient_latency_by_hostpath", TagKeys: []tag.Key{ochttp.Host, ochttp.Path}, diff --git a/plugin/ochttp/server_test.go b/plugin/ochttp/server_test.go index 52e2610e5..485127c5d 100644 --- a/plugin/ochttp/server_test.go +++ b/plugin/ochttp/server_test.go @@ -34,8 +34,8 @@ func updateMean(mean float64, sample, count int) float64 { } func TestHandlerStatsCollection(t *testing.T) { - for _, v := range DefaultServerViews { - v.Subscribe() + if err := view.Register(DefaultServerViews...); err != nil { + t.Fatalf("Failed to register ochttp.DefaultServerViews error: %v", err) } views := []string{ diff --git a/stats/view/view.go b/stats/view/view.go index c3dbf2325..d229d3e09 100644 --- a/stats/view/view.go +++ b/stats/view/view.go @@ -46,20 +46,6 @@ type View struct { Aggregation *Aggregation } -// Deprecated: Use &View{}. -func New(name, description string, keys []tag.Key, measure stats.Measure, agg *Aggregation) (*View, error) { - if measure == nil { - panic("measure may not be nil") - } - return &View{ - Name: name, - Description: description, - TagKeys: keys, - Measure: measure, - Aggregation: agg, - }, nil -} - // WithName returns a copy of the View with a new name. This is useful for // renaming views to cope with limitations placed on metric names by various // backends. diff --git a/stats/view/view_measure_test.go b/stats/view/view_measure_test.go index 9cb2b739f..deb8d380b 100644 --- a/stats/view/view_measure_test.go +++ b/stats/view/view_measure_test.go @@ -28,7 +28,7 @@ func TestMeasureFloat64AndInt64(t *testing.T) { Measure: fm, Aggregation: Sum(), } - Subscribe(v1, v2) + Register(v1, v2) stats.Record(context.Background(), im.M(5)) stats.Record(context.Background(), fm.M(2.2)) diff --git a/stats/view/worker.go b/stats/view/worker.go index 09794b39a..2c9b62126 100644 --- a/stats/view/worker.go +++ b/stats/view/worker.go @@ -61,22 +61,6 @@ func Find(name string) (v *View) { return resp.v } -// Deprecated: Use the Register function -func Subscribe(v ...*View) error { - return Register(v...) -} - -// Deprecated: Use the Unregister function -func Unsubscribe(v ...*View) error { - Unregister(v...) - return nil -} - -// Deprecated: Use the Register function. -func (v *View) Subscribe() error { - return Register(v) -} - // Register begins collecting data for the given views. // Once a view is subscribed, it reports data to the registered exporters. func Register(views ...*View) error { @@ -110,15 +94,6 @@ func Unregister(views ...*View) { <-req.done } -// Deprecated: Use the Unregister function instead. -func (v *View) Unsubscribe() error { - if v == nil { - return nil - } - Unregister(v) - return nil -} - func RetrieveData(viewName string) ([]*Row, error) { req := &retrieveDataReq{ now: time.Now(), diff --git a/stats/view/worker_commands.go b/stats/view/worker_commands.go index 278625f62..0d244ac7e 100644 --- a/stats/view/worker_commands.go +++ b/stats/view/worker_commands.go @@ -41,7 +41,12 @@ type getViewByNameResp struct { } func (cmd *getViewByNameReq) handleCommand(w *worker) { - cmd.c <- &getViewByNameResp{w.views[cmd.name].view} + v := w.views[cmd.name] + if v == nil { + cmd.c <- &getViewByNameResp{nil} + return + } + cmd.c <- &getViewByNameResp{v.view} } // registerViewReq is the command to register a view. diff --git a/stats/view/worker_test.go b/stats/view/worker_test.go index ea865bd1f..78aaa4fd5 100644 --- a/stats/view/worker_test.go +++ b/stats/view/worker_test.go @@ -231,12 +231,8 @@ func Test_Worker_RecordFloat64(t *testing.T) { } } - // cleaning up - for _, v := range tc.registrations { - if err := v.Unsubscribe(); err != nil { - t.Fatalf("%v: Unregistering from view %v errored with %v; want no error", tc.label, v.Name, err) - } - } + // Cleaning up. + Unregister(tc.registrations...) } } @@ -320,7 +316,11 @@ func TestWorkerStarttime(t *testing.T) { ctx := context.Background() m := stats.Int64("measure/TestWorkerStarttime", "desc", "unit") - v, _ := New("testview", "", nil, m, Count()) + v := &View{ + Name: "testview", + Measure: m, + Aggregation: Count(), + } SetReportingPeriod(25 * time.Millisecond) if err := Register(v); err != nil { diff --git a/trace/sampling.go b/trace/sampling.go index 0dde31957..313f8b68e 100644 --- a/trace/sampling.go +++ b/trace/sampling.go @@ -24,12 +24,6 @@ func newDefaultSampler() Sampler { return ProbabilitySampler(defaultSamplingProbability) } -// SetDefaultSampler sets the default sampler used when creating new spans. -// -// Deprecated: Use ApplyConfig. -func SetDefaultSampler(sampler Sampler) { -} - // Sampler decides whether a trace should be sampled and exported. type Sampler func(SamplingParameters) SamplingDecision