pyroscope

package
v1.14.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 24, 2026 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const (
	LabelNameDelta   = "__delta__"
	LabelName        = "__name__"
	LabelServiceName = "service_name"

	HeaderContentType = "Content-Type"
)

Variables

View Source
var NoopAppendable = AppendableFunc(func(_ context.Context, _ labels.Labels, _ []*RawSample) error { return nil })

Functions

This section is empty.

Types

type Appendable

type Appendable interface {
	debuginfo.Appender

	Appender() Appender
}

type Appender

type Appender interface {
	Append(ctx context.Context, labels labels.Labels, samples []*RawSample) error
	AppendIngest(ctx context.Context, profile *IncomingProfile) error
}

type AppenderMock added in v1.13.0

type AppenderMock struct {
	AppendIngestFunc    func(ctx context.Context, profile *IncomingProfile) error
	AppendFunc          func(ctx context.Context, labels labels.Labels, samples []*RawSample) error
	ClientFunc          func() debuginfogrpc.DebuginfoServiceClient
	DebugInfoUploadFunc func(j debuginfo.UploadJob)
}

func AppendableFunc

func AppendableFunc(f func(ctx context.Context, labels labels.Labels, samples []*RawSample) error) AppenderMock

func AppendableIngestFunc added in v1.7.0

func AppendableIngestFunc(f func(ctx context.Context, profile *IncomingProfile) error) AppenderMock

func (AppenderMock) Append added in v1.13.0

func (a AppenderMock) Append(ctx context.Context, labels labels.Labels, samples []*RawSample) error

func (AppenderMock) AppendIngest added in v1.13.0

func (a AppenderMock) AppendIngest(ctx context.Context, profile *IncomingProfile) error

func (AppenderMock) Appender added in v1.13.0

func (a AppenderMock) Appender() Appender

func (AppenderMock) Client added in v1.13.0

func (AppenderMock) Upload added in v1.13.0

func (a AppenderMock) Upload(j debuginfo.UploadJob)

type Fanout

type Fanout struct {
	// contains filtered or unexported fields
}

Fanout supports the default Alloy style of appendables since it can go to multiple outputs. It also allows the intercepting of appends.

func NewFanout

func NewFanout(children []Appendable, componentID string, register prometheus.Registerer) *Fanout

NewFanout creates a fanout appendable.

func (*Fanout) Appender

func (f *Fanout) Appender() Appender

Appender satisfies the Appendable interface.

func (*Fanout) Children

func (f *Fanout) Children() []Appendable

Children returns the children of the fanout.

func (*Fanout) Client added in v1.13.0

func (*Fanout) String added in v1.12.0

func (f *Fanout) String() string

func (*Fanout) UpdateChildren

func (f *Fanout) UpdateChildren(children []Appendable)

UpdateChildren allows changing of the children of the fanout.

func (*Fanout) Upload added in v1.13.0

func (f *Fanout) Upload(j debuginfo.UploadJob)

type IncomingProfile added in v1.5.0

type IncomingProfile struct {
	// RawBody is the set of bytes of the pprof profile, as its sent by the client
	RawBody []byte
	// ContentType is the content type of the RawBody. This must be sent on to the endpoints.
	ContentType []string
	URL         *url.URL
	Labels      labels.Labels
}

type RawSample

type RawSample struct {
	ID string
	// raw_profile is the set of bytes of the pprof profile
	RawProfile []byte
}

Directories

Path Synopsis
reporter/parca/reporter/elfwriter
Package elfwriter is a package to write ELF files without having their entire contents in memory at any one time.
Package elfwriter is a package to write ELF files without having their entire contents in memory at any one time.
Package enrich provides the pyroscope.enrich component.
Package enrich provides the pyroscope.enrich component.
Package relabel provides label manipulation for Pyroscope profiles.
Package relabel provides label manipulation for Pyroscope profiles.
internal/fastdelta
Package fastdelta tries to match up samples between two pprof profiles and take their difference.
Package fastdelta tries to match up samples between two pprof profiles and take their difference.
internal/pproflite
Package pproflite implements zero-allocation pprof encoding and decoding.
Package pproflite implements zero-allocation pprof encoding and decoding.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL