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

Commit 328ab7a

Browse files
authored
Allow Stackdriver users to pass monitoring and tracing options separately (#699)
Fixes #691.
1 parent c7be888 commit 328ab7a

4 files changed

Lines changed: 11 additions & 6 deletions

File tree

exporter/stackdriver/stackdriver.go

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,15 @@ type Options struct {
4949
// Optional.
5050
OnError func(err error)
5151

52-
// ClientOptions are additional options to be passed
52+
// MonitoringClientOptions are additional options to be passed
5353
// to the underlying Stackdriver Monitoring API client.
5454
// Optional.
55-
ClientOptions []option.ClientOption
55+
MonitoringClientOptions []option.ClientOption
56+
57+
// TraceClientOptions are additional options to be passed
58+
// to the underlying Stackdriver Trace API client.
59+
// Optional.
60+
TraceClientOptions []option.ClientOption
5661

5762
// BundleDelayThreshold determines the max amount of time
5863
// the exporter can wait before uploading view data to

exporter/stackdriver/stats.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ func newStatsExporter(o Options) (*statsExporter, error) {
9090

9191
seenProjects[o.ProjectID] = true
9292

93-
opts := append(o.ClientOptions, option.WithUserAgent(internal.UserAgent))
93+
opts := append(o.MonitoringClientOptions, option.WithUserAgent(internal.UserAgent))
9494
client, err := monitoring.NewMetricClient(context.Background(), opts...)
9595
if err != nil {
9696
return nil, err

exporter/stackdriver/stats_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ var authOptions = []option.ClientOption{option.WithGRPCConn(&grpc.ClientConn{})}
3939
func TestRejectBlankProjectID(t *testing.T) {
4040
ids := []string{"", " ", " "}
4141
for _, projectID := range ids {
42-
opts := Options{ProjectID: projectID, ClientOptions: authOptions}
42+
opts := Options{ProjectID: projectID, MonitoringClientOptions: authOptions}
4343
exp, err := newStatsExporter(opts)
4444
if err == nil || exp != nil {
4545
t.Errorf("%q ProjectID must be rejected: NewExporter() = %v err = %q", projectID, exp, err)
@@ -52,7 +52,7 @@ func TestRejectBlankProjectID(t *testing.T) {
5252
func TestNewExporterSingletonPerProcess(t *testing.T) {
5353
ids := []string{"open-census.io", "x", "fakeProjectID"}
5454
for _, projectID := range ids {
55-
opts := Options{ProjectID: projectID, ClientOptions: authOptions}
55+
opts := Options{ProjectID: projectID, MonitoringClientOptions: authOptions}
5656
exp, err := newStatsExporter(opts)
5757
if err != nil {
5858
t.Errorf("NewExporter() projectID = %q err = %q", projectID, err)

exporter/stackdriver/trace.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ type traceExporter struct {
4242
var _ trace.Exporter = (*traceExporter)(nil)
4343

4444
func newTraceExporter(o Options) (*traceExporter, error) {
45-
client, err := tracingclient.NewClient(context.Background(), o.ClientOptions...)
45+
client, err := tracingclient.NewClient(context.Background(), o.TraceClientOptions...)
4646
if err != nil {
4747
return nil, fmt.Errorf("stackdriver: couldn't initialize trace client: %v", err)
4848
}

0 commit comments

Comments
 (0)