Documentation ¶
Overview ¶
Package profile provides an abstraction of pprof profiles generations.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetPullServices ¶
func GetPullServices() []otel.PullServiceDiscovery
GetPullServices lists the PProfProvider that implement the otel.PullServiceDiscovery interface
func HasProviders ¶
func HasProviders() bool
HasProviders checks that there is at least one PProfProvider initialized.
func HasPullServices ¶
func HasPullServices() bool
HasPullServices checks if one or more current PProfProvider implement the otel.PullServiceDiscovery interface
Types ¶
type Config ¶
type Config struct {
Publishers []string `json:"publishers" yaml:"publishers"`
}
Config is a serializable representation of a list of publishers
type PProfProvider ¶
type PProfProvider interface {
PushSupported() bool
}
PProfProvider is the interface for a profile provider
func OpenProfiler ¶
OpenProfiler opens the Registry identified by the URL given. See the URLOpener documentation in driver subpackages for details on supported URL formats, and https://gocloud.dev/concepts/urls for more information.
type URLMux ¶
type URLMux struct {
// contains filtered or unexported fields
}
URLMux is a URL opener multiplexer. It matches the scheme of the URLs against a set of registered schemes and calls the opener that matches the URL's scheme. See https://gocloud.dev/concepts/urls/ for more information.
The zero value is a multiplexer with no registered schemes.
func DefaultURLMux ¶
func DefaultURLMux() *URLMux
DefaultURLMux returns the URLMux used by OpenTopic and OpenSubscription.
Driver packages can use this to register their TopicURLOpener and/or SubscriptionURLOpener on the mux.
func (*URLMux) OpenProfiler ¶
func (mux *URLMux) OpenProfiler(ctx context.Context, urlstr string, svc otel.Service) (PProfProvider, error)
OpenProfiler calls OpenTopicURL with the URL parsed from urlstr. OpenTopic is safe to call from multiple goroutines.
type URLOpener ¶
type URLOpener interface {
OpenURL(ctx context.Context, u *url.URL, svc otel.Service) (PProfProvider, error)
}
URLOpener represents types than can open Registries based on a URL. The opener must not modify the URL argument. OpenURL must be safe to call from multiple goroutines.
This interface is generally implemented by types in driver packages.
Directories ¶
Path | Synopsis |
---|---|
Package http_pull provides a profiling implementation that exposes PProf profiles on an HTTP endpoint
|
Package http_pull provides a profiling implementation that exposes PProf profiles on an HTTP endpoint |
Package pyroscope provides a Push-implementation of profiling traces to Grafana Pyroscope server
|
Package pyroscope provides a Push-implementation of profiling traces to Grafana Pyroscope server |