package trace import ( datadog "github.com/DataDog/opencensus-go-exporter-datadog" octrace "go.opencensus.io/trace" ) type datadogProvider struct { exporter *datadog.Exporter } func (provider *datadogProvider) Register(opts *TracingOptions) error { dOpts := datadog.Options{ Service: opts.Service, TraceAddr: opts.DatadogAddress, } dex, err := datadog.NewExporter(dOpts) if err != nil { return err } octrace.RegisterExporter(dex) provider.exporter = dex return nil } func (provider *datadogProvider) Unregister() error { if provider.exporter == nil { return nil } octrace.UnregisterExporter(provider.exporter) provider.exporter.Stop() provider.exporter = nil return nil }