relabel

package
v1.10.0 Latest Latest
Warning

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

Go to latest
Published: Jul 16, 2025 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Overview

Package relabel provides label manipulation for Pyroscope profiles.

Label Handling: The component handles two types of label representations: - labels.Labels ([]Label): Used by Pyroscope and relabeling logic - model.LabelSet (map[string]string): Used for efficient fingerprinting and cache lookups

Cache Implementation: The cache uses model.LabelSet's fingerprinting to store label sets efficiently. Each cache entry contains both the original and relabeled labels to handle collisions and avoid recomputing relabeling rules.

Index

Constants

This section is empty.

Variables

View Source
var DefaultArguments = Arguments{
	MaxCacheSize: 10_000,
}

DefaultArguments provides the default arguments for the pyroscope.relabel component.

Functions

This section is empty.

Types

type Arguments

type Arguments struct {
	// Where the relabeled metrics should be forwarded to.
	ForwardTo []pyroscope.Appendable `alloy:"forward_to,attr"`
	// The relabelling rules to apply to each log entry before it's forwarded.
	RelabelConfigs []*alloy_relabel.Config `alloy:"rule,block,optional"`
	// The maximum number of items to hold in the component's LRU cache.
	MaxCacheSize int `alloy:"max_cache_size,attr,optional"`
}

func (*Arguments) SetToDefault

func (a *Arguments) SetToDefault()

SetToDefault implements syntax.Defaulter.

type Component

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

Component implements the pyroscope.relabel component.

func New

func New(o component.Options, args Arguments) (*Component, error)

New creates a new pyroscope.relabel component.

func (*Component) Append

func (c *Component) Append(ctx context.Context, lbls labels.Labels, samples []*pyroscope.RawSample) error

func (*Component) AppendIngest

func (c *Component) AppendIngest(ctx context.Context, profile *pyroscope.IncomingProfile) error

func (*Component) Appender

func (c *Component) Appender() pyroscope.Appender

func (*Component) Run

func (c *Component) Run(ctx context.Context) error

func (*Component) Update

func (c *Component) Update(args component.Arguments) error

type Exports

type Exports struct {
	Receiver pyroscope.Appendable `alloy:"receiver,attr"`
	Rules    alloy_relabel.Rules  `alloy:"rules,attr"`
}

Exports holds values which are exported by the pyroscope.relabel component.

Jump to

Keyboard shortcuts

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