1
0
mirror of https://github.com/open-telemetry/opentelemetry-go.git synced 2025-11-23 22:34:47 +02:00

Remove experimental/streaming globals, add streaming example (#135)

* Remove globals from exp/streaming

* basic example

* Build the streaming example

* Update README.md for running streaming example

* Remove observer package

* Move observer to exporter

* Fix

* Re-run make circle-ci
This commit is contained in:
Joshua MacDonald
2019-09-23 14:39:10 -07:00
committed by GitHub
parent 83935b2558
commit a3ae50d8bc
34 changed files with 534 additions and 593 deletions

View File

@@ -26,17 +26,16 @@ import (
"go.opentelemetry.io/api/key"
"go.opentelemetry.io/api/trace"
"go.opentelemetry.io/experimental/streaming/exporter/observer"
"go.opentelemetry.io/experimental/streaming/exporter"
"go.opentelemetry.io/experimental/streaming/sdk/internal"
)
func TestEvents(t *testing.T) {
_ = New().WithSpan(context.Background(), "test", func(ctx context.Context) error {
obs := internal.NewTestObserver()
_ = New(obs).WithSpan(context.Background(), "test", func(ctx context.Context) error {
type test1Type struct{}
type test2Type struct{}
span := trace.CurrentSpan(ctx)
obs := internal.NewRegisteredObserver()
defer obs.ClearAndUnregister()
k1v1 := key.New("k1").String("v1")
k2v2 := key.New("k2").String("v2")
k3v3 := key.New("k3").String("v3")
@@ -45,7 +44,7 @@ func TestEvents(t *testing.T) {
ctx2 := context.WithValue(ctx1, test2Type{}, "foo")
span.AddEvent(ctx2, "testing", k2v2, k3v3)
got := obs.Events(observer.ADD_EVENT)
got := obs.Events(exporter.ADD_EVENT)
for idx := range got {
if got[idx].Time.IsZero() {
t.Errorf("Event %d has zero timestamp", idx)
@@ -55,14 +54,14 @@ func TestEvents(t *testing.T) {
if len(got) != 2 {
t.Errorf("Expected two events, got %d", len(got))
}
want := []observer.Event{
want := []exporter.Event{
{
Type: observer.ADD_EVENT,
Type: exporter.ADD_EVENT,
String: "one two three",
Attributes: []core.KeyValue{k1v1},
},
{
Type: observer.ADD_EVENT,
Type: exporter.ADD_EVENT,
String: "testing",
Attributes: []core.KeyValue{k2v2, k3v3},
},
@@ -80,27 +79,26 @@ func TestEvents(t *testing.T) {
func TestCustomStartEndTime(t *testing.T) {
startTime := time.Date(2019, time.August, 27, 14, 42, 0, 0, time.UTC)
endTime := startTime.Add(time.Second * 20)
tracer := New()
obs := internal.NewRegisteredObserver()
defer obs.ClearAndUnregister()
obs := internal.NewTestObserver()
tracer := New(obs)
_, span := tracer.Start(
context.Background(),
"testspan",
trace.WithStartTime(startTime),
)
span.Finish(trace.WithFinishTime(endTime))
want := []observer.Event{
want := []exporter.Event{
{
Type: observer.START_SPAN,
Type: exporter.START_SPAN,
Time: startTime,
String: "testspan",
},
{
Type: observer.FINISH_SPAN,
Type: exporter.FINISH_SPAN,
Time: endTime,
},
}
got := append(obs.Events(observer.START_SPAN), obs.Events(observer.FINISH_SPAN)...)
got := append(obs.Events(exporter.START_SPAN), obs.Events(exporter.FINISH_SPAN)...)
diffEvents(t, got, want, "Scope")
}
@@ -129,7 +127,7 @@ func checkContext(t *testing.T, ctx context.Context, key, wantValue interface{})
return true
}
func diffEvents(t *testing.T, got, want []observer.Event, extraIgnoredFields ...string) bool {
func diffEvents(t *testing.T, got, want []exporter.Event, extraIgnoredFields ...string) bool {
ignoredPaths := map[string]struct{}{
"Sequence": struct{}{},
"Context": struct{}{},