Documentation ¶
Overview ¶
Package stackdriver contains the OpenCensus exporters for Stackdriver Monitoring and Stackdriver Tracing.
Please note that the Stackdriver exporter is currently experimental.
The package uses Application Default Credentials to authenticate. See https://developers.google.com/identity/protocols/application-default-credentials
Example ¶
package main import ( "log" "net/http" "go.opencensus.io/exporter/stackdriver" "go.opencensus.io/plugin/ochttp" "go.opencensus.io/plugin/ochttp/propagation/google" "go.opencensus.io/stats/view" "go.opencensus.io/trace" ) func main() { exporter, err := stackdriver.NewExporter(stackdriver.Options{ProjectID: "google-project-id"}) if err != nil { log.Fatal(err) } // Export to Stackdriver Monitoring. view.RegisterExporter(exporter) // Export to Stackdriver Trace. trace.RegisterExporter(exporter) // Automatically add a Stackdriver trace header to outgoing requests: client := &http.Client{ Transport: &ochttp.Transport{ Propagation: &google.HTTPFormat{}, }, } _ = client // use client // All outgoing requests from client will include a Stackdriver Trace header. // See the ochttp package for how to handle incoming requests. }
Output:
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Exporter ¶
type Exporter struct {
// contains filtered or unexported fields
}
Exporter is a stats.Exporter and trace.Exporter implementation that uploads data to Stackdriver.
func NewExporter ¶
NewExporter creates a new Exporter that implements both stats.Exporter and trace.Exporter.
func (*Exporter) ExportSpan ¶
ExportSpan exports a SpanData to Stackdriver Trace.
func (*Exporter) ExportView ¶
ExportView exports to the Stackdriver Monitoring if view data has one or more rows.
type Options ¶
type Options struct { // ProjectID is the identifier of the Stackdriver // project the user is uploading the stats data to. ProjectID string // OnError is the hook to be called when there is // an error occurred when uploading the stats data. // If no custom hook is set, errors are logged. // Optional. OnError func(err error) // ClientOptions are additional options to be passed // to the underlying Stackdriver Monitoring API client. // Optional. ClientOptions []option.ClientOption // BundleDelayThreshold determines the max amount of time // the exporter can wait before uploading view data to // the backend. // Optional. BundleDelayThreshold time.Duration // BundleCountThreshold determines how many view data events // can be buffered before batch uploading them to the backend. // Optional. BundleCountThreshold int // Resource is an optional field that represents the Stackdriver // MonitoredResource, a resource that can be used for monitoring. // If no custom ResourceDescriptor is set, a default MonitoredResource // with type global and no resource labels will be used. // Optional. Resource *monitoredrespb.MonitoredResource }
Options contains options for configuring the exporter.