Skip to content
This repository was archived by the owner on Oct 3, 2023. It is now read-only.

Commit 8a3b995

Browse files
authored
Deprecate NewSpanXXX in the favor of StartSpan (#708)
Required to support the Go execution tracer spans. Fixes #694.
1 parent 3be4c4f commit 8a3b995

5 files changed

Lines changed: 15 additions & 13 deletions

File tree

exporter/stackdriver/stackdriver_test.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,14 +53,13 @@ func TestExport(t *testing.T) {
5353

5454
trace.ApplyConfig(trace.Config{DefaultSampler: trace.AlwaysSample()})
5555

56-
span := trace.NewSpan("custom-span", nil, trace.StartOptions{})
56+
_, span := trace.StartSpan(context.Background(), "custom-span")
5757
time.Sleep(10 * time.Millisecond)
5858
span.End()
5959

6060
// Test HTTP spans
6161

6262
handler := http.HandlerFunc(func(rw http.ResponseWriter, req *http.Request) {
63-
6463
_, backgroundSpan := trace.StartSpan(context.Background(), "BackgroundWork")
6564
spanContext := backgroundSpan.SpanContext()
6665
time.Sleep(10 * time.Millisecond)

exporter/stackdriver/stats.go

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -155,12 +155,11 @@ func (e *statsExporter) Flush() {
155155
}
156156

157157
func (e *statsExporter) uploadStats(vds []*view.Data) error {
158-
span := trace.NewSpan(
158+
ctx, span := trace.StartSpan(
159+
context.Background(),
159160
"go.opencensus.io/exporter/stackdriver.uploadStats",
160-
nil,
161-
trace.StartOptions{Sampler: trace.NeverSample()},
161+
trace.WithSampler(trace.NeverSample()),
162162
)
163-
ctx := trace.WithSpan(context.Background(), span)
164163
defer span.End()
165164

166165
for _, vd := range vds {

exporter/stackdriver/trace.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -117,11 +117,14 @@ func (e *traceExporter) uploadSpans(spans []*trace.SpanData) {
117117
req.Spans = append(req.Spans, protoFromSpanData(span, e.projectID))
118118
}
119119
// Create a never-sampled span to prevent traces associated with exporter.
120-
span := trace.NewSpan("go.opencensus.io/exporter/stackdriver.uploadSpans", nil, trace.StartOptions{Sampler: trace.NeverSample()})
120+
ctx, span := trace.StartSpan( // TODO: add timeouts
121+
context.Background(),
122+
"go.opencensus.io/exporter/stackdriver.uploadSpans",
123+
trace.WithSampler(trace.NeverSample()),
124+
)
121125
defer span.End()
122126
span.AddAttributes(trace.Int64Attribute("num_spans", int64(len(spans))))
123127

124-
ctx := trace.WithSpan(context.Background(), span) // TODO: add timeouts
125128
err := e.client.BatchWriteSpans(ctx, &req)
126129
if err != nil {
127130
span.SetStatus(trace.Status{Code: 2, Message: err.Error()})

exporter/stackdriver/trace_proto_test.go

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,19 +57,21 @@ func (t *testExporter) ExportSpan(s *trace.SpanData) {
5757
}
5858

5959
func TestExportTrace(t *testing.T) {
60+
ctx := context.Background()
61+
6062
var te testExporter
6163
trace.RegisterExporter(&te)
6264
defer trace.UnregisterExporter(&te)
6365

64-
span0 := trace.NewSpanWithRemoteParent(
66+
ctx, span0 := trace.StartSpanWithRemoteParent(
67+
ctx,
6568
"span0",
6669
trace.SpanContext{
6770
TraceID: traceID,
6871
SpanID: spanID,
6972
TraceOptions: 1,
7073
},
71-
trace.StartOptions{})
72-
ctx := trace.WithSpan(context.Background(), span0)
74+
)
7375
{
7476
ctx1, span1 := trace.StartSpan(ctx, "span1")
7577
{

exporter/stackdriver/trace_test.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,8 @@ func TestBundling(t *testing.T) {
3535
}
3636
trace.RegisterExporter(exporter)
3737

38-
trace.ApplyConfig(trace.Config{DefaultSampler: trace.AlwaysSample()})
3938
for i := 0; i < 35; i++ {
40-
_, span := trace.StartSpan(context.Background(), "span")
39+
_, span := trace.StartSpan(context.Background(), "span", trace.WithSampler(trace.AlwaysSample()))
4140
span.End()
4241
}
4342

0 commit comments

Comments
 (0)