Documentation ¶
Overview ¶
Package observe provides functions that help with setting tracing/metrics in cloud providers, mainly GCP.
Index ¶
- func GetCloudRunInfo() (service, version, config string)
- func GetGAEInfo() (service, version string)
- func GetServiceInfo() (projectID, service, version string)
- func GoogleProjectID() string
- func IsCloudRun() bool
- func IsGAE() bool
- func IsGCPEnabled() bool
- func NewStackdriverExporter(projectID string, onErr func(error)) (*stackdriver.Exporter, error)
- func RegisterAndObserveGCP(onError func(error)) error
- func SkipObserve() bool
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetCloudRunInfo ¶
func GetCloudRunInfo() (service, version, config string)
GetCloudRunInfo returns the service and the version of the Cloud Run application.
func GetGAEInfo ¶
func GetGAEInfo() (service, version string)
GetGAEInfo returns the service and the version of the GAE application.
func GetServiceInfo ¶
func GetServiceInfo() (projectID, service, version string)
GetServiceInfo returns the GCP Project ID, the service name and version (GAE or through SERVICE_NAME/SERVICE_VERSION env vars). Note that SERVICE_NAME/SERVICE_VERSION are not standard but your application can pass them in as variables to be included in your trace attributes
func GoogleProjectID ¶
func GoogleProjectID() string
GoogleProjectID returns the GCP Project ID that can be used to instantiate various GCP clients such as Stack Driver.
func IsCloudRun ¶
func IsCloudRun() bool
IsCloudRun tells you whether your program is running within the Cloud Run platform.
func IsGAE ¶
func IsGAE() bool
IsGAE tells you whether your program is running within the App Engine platform.
func IsGCPEnabled ¶
func IsGCPEnabled() bool
IsGCPEnabled returns whether the running application is inside GCP or has access to its products.
func NewStackdriverExporter ¶
func NewStackdriverExporter(projectID string, onErr func(error)) (*stackdriver.Exporter, error)
NewStackdriverExporter will return the tracing and metrics through the stack driver exporter, if exists in the underlying platform. If exporter is registered, it returns the exporter so you can register it and ensure to call Flush on termination.
func RegisterAndObserveGCP ¶
RegisterAndObserveGCP will initiate and register Stackdriver profiling and tracing and metrics in environments that pass the tests in the IsGCPEnabled function. All exporters will be registered using the information returned by the GetServiceInfo function. Tracing and metrics are enabled via OpenCensus exporters. See the OpenCensus documentation for instructions for registering additional spans and metrics.
func SkipObserve ¶
func SkipObserve() bool
SkipObserve checks if the GIZMO_SKIP_OBSERVE environment variable has been populated. This may be used along with local development to cut down on long startup times caused by the 'monitoredresource.Autodetect()' call in IsGCPEnabled().
Types ¶
This section is empty.