event: fix up the disabled version

Change-Id: I87403948e82f1010833f6ea12257451b58b5cc52
Reviewed-on: https://go-review.googlesource.com/c/exp/+/324154
Trust: Ian Cottrell <iancottrell@google.com>
Run-TryBot: Ian Cottrell <iancottrell@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Jonathan Amsterdam <jba@google.com>
diff --git a/event/adapter/eventtest/eventtest.go b/event/adapter/eventtest/eventtest.go
index 71ffb80..915160a 100644
--- a/event/adapter/eventtest/eventtest.go
+++ b/event/adapter/eventtest/eventtest.go
@@ -62,6 +62,9 @@
 func FixedNow(ctx context.Context) {
 	nextTime, _ := time.Parse(time.RFC3339Nano, "2020-03-05T14:27:48Z")
 	e, _ := event.FromContext(ctx)
+	if e == nil {
+		return
+	}
 	e.Now = func() time.Time {
 		thisTime := nextTime
 		nextTime = nextTime.Add(time.Second)
diff --git a/event/common_test.go b/event/common_test.go
index 5c0797a..892287b 100644
--- a/event/common_test.go
+++ b/event/common_test.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build !race
+// +build !disable_events
 
 package event_test
 
diff --git a/event/disabled.go b/event/disabled.go
index 7de05ff..77cbe75 100644
--- a/event/disabled.go
+++ b/event/disabled.go
@@ -11,16 +11,14 @@
 	"time"
 )
 
-type Builder struct{}
-type TraceBuilder struct{ ctx context.Context }
+type Builder struct{ ctx context.Context }
 type Exporter struct {
 	Now func() time.Time
 }
 
-func NewExporter(h Handler) *Exporter { return &Exporter{} }
+func NewExporter(h interface{}) *Exporter { return &Exporter{} }
 
 func To(ctx context.Context) Builder                        { return Builder{} }
-func Trace(ctx context.Context) TraceBuilder                { return TraceBuilder{ctx: ctx} }
 func (b Builder) Clone() Builder                            { return b }
 func (b Builder) With(label Label) Builder                  { return b }
 func (b Builder) WithAll(labels ...Label) Builder           { return b }
@@ -30,15 +28,13 @@
 func (b Builder) Annotate()                                 {}
 func (b Builder) End()                                      {}
 func (b Builder) Event() *Event                             { return &Event{} }
-func (b TraceBuilder) With(label Label) TraceBuilder        { return b }
-func (b TraceBuilder) WithAll(labels ...Label) TraceBuilder { return b }
-
-func (b TraceBuilder) Start(name string) (context.Context, func()) {
+func (b Builder) Start(name string) (context.Context, func()) {
 	return b.ctx, func() {}
 }
 
 func newContext(ctx context.Context, exporter *Exporter, parent uint64) context.Context {
 	return ctx
 }
+func FromContext(ctx context.Context) (*Exporter, uint64) { return nil, 0 }
 
 func setDefaultExporter(e *Exporter) {}
diff --git a/event/logging/egokit/gokit_test.go b/event/logging/egokit/gokit_test.go
index cb554a2..eac1008 100644
--- a/event/logging/egokit/gokit_test.go
+++ b/event/logging/egokit/gokit_test.go
@@ -2,6 +2,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// +build !disable_events
+
 package egokit
 
 import (
diff --git a/event/logging/elogr/logr_test.go b/event/logging/elogr/logr_test.go
index c63f9cd..183a15f 100644
--- a/event/logging/elogr/logr_test.go
+++ b/event/logging/elogr/logr_test.go
@@ -2,6 +2,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// +build !disable_events
+
 package elogr
 
 import (
diff --git a/event/logging/elogrus/logrus.go b/event/logging/elogrus/logrus.go
index ebc2f73..1f563e9 100644
--- a/event/logging/elogrus/logrus.go
+++ b/event/logging/elogrus/logrus.go
@@ -2,6 +2,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// +build !disable_events
+
 // Package elogrus provides a logrus Formatter for events.
 // To use for the global logger:
 //   logrus.SetFormatter(elogrus.NewFormatter(exporter))
diff --git a/event/logging/elogrus/logrus_test.go b/event/logging/elogrus/logrus_test.go
index 9304c2f..9ffe5bd 100644
--- a/event/logging/elogrus/logrus_test.go
+++ b/event/logging/elogrus/logrus_test.go
@@ -2,6 +2,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// +build !disable_events
+
 package elogrus
 
 import (
diff --git a/event/logging/ezap/zap.go b/event/logging/ezap/zap.go
index b9ab118..a19f8c5 100644
--- a/event/logging/ezap/zap.go
+++ b/event/logging/ezap/zap.go
@@ -2,6 +2,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// +build !disable_events
+
 // ezap provides an implementation of zapcore.Core for events.
 // To use globally:
 //     zap.ReplaceGlobals(zap.New(NewCore(exporter)))
diff --git a/event/logging/ezap/zap_test.go b/event/logging/ezap/zap_test.go
index c440edf..37f7e1d 100644
--- a/event/logging/ezap/zap_test.go
+++ b/event/logging/ezap/zap_test.go
@@ -2,6 +2,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// +build !disable_events
+
 package ezap
 
 import (
diff --git a/event/otel/trace_test.go b/event/otel/trace_test.go
index 65310de..0f808b5 100644
--- a/event/otel/trace_test.go
+++ b/event/otel/trace_test.go
@@ -2,6 +2,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// +build !disable_events
+
 package otel
 
 import (